spring boot mybatis 整合shiro简单实现登陆权限管理

之前也是按照****上别人的博客去配置,可是不能实现login后跳转到index

决定写自己的文档记录实现过程

环境INTELiJ Idea spring boot maven 

Step1引入依赖,版本可改,我的版本就是下图这些,主要注意shiro-spring 和thymeleaf-extras-shiro

spring boot mybatis 整合shiro简单实现登陆权限管理

配置过可以运行一下,看是否有问题,养成每完成一个配置就运行一下的习惯,以防到最后出问题调试不出

Step2配置mybatis

2.1resource文件夹下新建application.yml

spring boot mybatis 整合shiro简单实现登陆权限管理

2.2在resource/generator中新建generatorConfig.xml

spring boot mybatis 整合shiro简单实现登陆权限管理

2.3运行generatorConfig.xml,具体步骤在之前配置mybatis中有介绍

这样将生成domain和mapper两个包,及包里的User等类,和mybatis对应的mapper类

2.4新建Service类

包括UserService和UserServiceImpl

spring boot mybatis 整合shiro简单实现登陆权限管理

这里可以写一个Test,测试一下数据库查询是否符合

Step3配置shiro

3.1在config包中新建shiroConfig类

spring boot mybatis 整合shiro简单实现登陆权限管理

3.2新建CredentialMatcher

spring boot mybatis 整合shiro简单实现登陆权限管理

3.3新建shiroRealm

spring boot mybatis 整合shiro简单实现登陆权限管理

Step4新建Controller在UserController中实现登陆检测和权限控制

spring boot mybatis 整合shiro简单实现登陆权限管理

Step5使用login.html

spring boot mybatis 整合shiro简单实现登陆权限管理

这样当输入正确的用户名和密码时将跳转到index.html,当访问/user时可以正常访问,/userInfoAdd时显示403.html提示没有权限