0%

用户管理

2018年2月21日 下午6:39

从这里开始就不是以动手为主了,而是要快速的抓住geely的idea,同时也尽量节省时间

todo

我还要写两篇文章

  1. 讲解配置
  2. 讲解spring springMVC Mybatis 各自的功能以及联系
  3. 记得更改logback.xml中的各种地址 ,方法:全局搜索imooc
  4. 建立restlet

用户管理

  1. 横向越权+纵向越权

    1. 用户id和username从session中获取,而不是用户输入
    2. 在线状态下更改密码时,此时只需要oldPassword , newPassword。
    3. 更改用户信息时,只需要需要更改的信息eg phone
  2. Guava缓存

  3. token

    1. 第一步请求:通过提交问题答案来更改密码,如果答案回答正确,返回token
    2. 第二步请求:username newPassword token三个参数请求
  4. salt值

    1. 在md5加密的时候加上salt值
  5. 高复用服务响应对象的设计思想和抽象封装

    1. 指的是common/ServerResponse
    2. 可以把ServerResponse的对象理解成service对外传递信息的唯一方式,不论是controller用还是,通过controller传递给对外的接口,依然为ServerResponse对象类型
    3. 他牛逼的一点是他通过泛型可以传递所有类型的信息,这就是所谓的复用
  6. 快捷键:

    1. psvm tab tab :主函数
    2. sout tab tab :输出
    3. 断点调试

用户整体的结构图:

  1. 【两个核心】:最底下的UserServiceImpl,UserController是程序运作的“马达”,是程序运行的灵活
    1. 他们依赖(虚线)于众多的对象,所以他们处在最底层。而没有人依赖于他们
  2. 【两个组合】:组合对象一般都是对自己最有用的部分,地位要远大于依赖的对象
    1. UserMapper——>UserServiceImpl
    2. IUserService——>UserController
  3. 【一个实现】:
    1. UserServiceImpl——>IUserService

理解性的笔记:

  1. 在编码的过程中总会设计一些看似巧妙的东西,他的作用就像是我们整理家一样,东西要分门别类,这样既可以自己心中有数,思维清晰,而且还有利于和别人讲解,捎带的就可以提高编程的效率。也就说本质目的是为了让自己舒服一点,提高编程效率只是一个捎带的。
    1. 从代码的表现来说:一句话就完成了一个的功能,舒服
  2. 注解编程+xml编程:要建立这个意识
  3. 只听视频十分容易累,调节的关键点还是放松心态,不要急于求成
  4. “没有女朋友,那就new一个”。这个看似是一个玩笑话,但是在java却表现出一个认识:涉及到硬件的一些功能,对于程序员看似很困难,其实所谓的硬件就是一个new出来的对象而已,中中意识要有