智能云端素材库后端-用户模块

数据访问层

连接并创建数据库表后,使用MyBatisX快速生成代码。注意移动后修改 mapper的xml文件中的包名。

此外将实体类的ID改为雪花算法生成,防止爬虫爬取。

采用逻辑删除,方便恢复数据。

创建用户类型的枚举类。

用户注册

创建注册请求信息类。添加注册方法并实现。

注册方法中包括:

  • 参数校验
  • 账号是否重复
  • 加密密码并尝试保存用户信息

用户登录

  • 参数校验
  • 查询用户
  • 记录登录状态

获取当前登录用户

  • 判断用户登录状态
  • 返回用户信息

返回用户信息时,可以进行数据脱敏,即去除用户信息类中的敏感信息(密码等),仅返回所需要的信息。

用户注销

移除session中的登录状态即可。

用户权限控制

使用SpringAOP+自定义权限校验注解实现统一的接口拦截和权限校验。

首先在annotation 包下编写权限校验注解。

之后编写权限校验AOP,放在aop包下。采用环绕通知。

对需要进行权限控制的接口添加注解。

用户管理

除了常规的CURD和数据脱敏外,需要注意分页功能。

使用Mybatis Plus时,需要独立按照分页插件。

此外,还需要在config包下新建全局JSON配置,将长整型转换为字符串,来解决JS的精度丢失问题。