shiro整合jwt,用于用户登录逻辑流程:
登录流程:
用户登录:输入用户名和密码–>后端校验:
–>有异常:处理异常
–>正常,生成jwt
访问接口时,统一被jwtFilter,即:shiro过滤器过滤, 进行登录处理:
1.无jwt直接访问接口:
在Controller层中加上@RequirtRole标签,过滤注解拦截,如果用户无jwt直接访问接口,则被拦截,并通过jwtFilter的异常处理功能,进行无权限的异常抛出处理
2.有jwt访问接口:
进行shiro登录处理,有问题(账号密码不对或者账号过期、无权限等)就抛异常,正常则访问接口,并返回数据
IService:
Mybatis-plus封装好的service方法,service层以继承的方式实现:extends IService<实体类>
ServiceImpl
同样时Mybatis-plus封装好的service层实现方法:extends ServiceImpl<实体类的Dao层, 实体类>
而dao层的mapper也要继承extends BaseMapper<实体类>才能实现,有了这些简单的增删改查的sql语句和service方法便可以省略不用写
Controller层: