学习Java项目--尚庭公寓--第12天

昨天把后台管理的视频看完了,今天把代码完成一下。

一、项目开发-后台管理

4、用户管理

  1. 用户管理共包含两个接口,分别是根据条件分页查询用户列表根据ID更新用户状态

  2. password字段属于敏感信息,因此在查询时应过滤掉,可在UserInfo实体的password字段的@TableField注解中增加一个参数select=false来实现。

  3. 分页查询用page+LambdaQueryWrapper

  4. 在这个接口用到了LambdaQueryWrapper+模糊匹配

  5. 由于只用到了一个表,所以直接用通用service的page方法就可以

5、系统管理

1、后台用户岗位管理

2、后台用户信息管理

  1. 保存或更新后台用户信息,这个接口涉及到了对用户输入的密码的处理,
  2. 判断用户名是否可用:

6、登录管理

  1. 有两种常见的认证方案,分别是基于Session的认证和基于Token的认证
  2. 所说的Token,通常指JWT(JSON Web TOKEN)
  3. 登录流程,在这里用到了Redis
  4. 登录管理共需三个接口,分别是获取图形验证码登录获取登录用户个人信息,除此之外,我们还需为所有受保护的接口增加验证JWT合法性的逻辑,这一功能可通过HandlerInterceptor来实现。
  5. 验证码生成工具。本项目使用开源的验证码生成工具EasyCaptcha,同时将其存入了Redis,验证码由后端传给前端

  6. 用户登录的校验逻辑分为三个主要步骤,分别是校验验证码校验用户状态校验密码

  7. 登录接口需要为登录成功的用户创建并返回JWT,本项目使用开源的JWT工具Java-JWT

  8. 为所有受保护的接口增加校验JWT合法性的逻辑,在JwtUtil中增加parseToken方法。再编写HandlerInterceptor,再注册

  9. 前端登录后,后续请求都将JWT,放置于HTTP请求的Header中,其Header的key为access-token

  10. 在获取登录用户个人信息接口,用到了多线程ThreadLocal。
  11. 为避免重复解析,通常会在拦截器将Token解析完毕后,将结果保存至ThreadLocal
  12. 修改JwtUtil中的parseToken方法,由于需要从Jwt中获取用户id,因此需要为parseToken 方法增加返回值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值