学习笔记 : 一个基础的的SSM整合Shiro案例

前些日子写了一个基础的SpringBoot整合Shiro案例,然后又进阶地学习了SSM整合Shiro的基本知识,继而今天总结一下 : 写一个基础的SSM整合Shiro案例(该案例与上述案例思路相同)~ 该案例的代码仓库 : https://github.com/YUbuntu0109/Shiro-learning/tree/master/ssm%20project%20with%20shiro

数据库设计

数据库ER图如下所示 :

数据表中用户及其分配的权限信息如下所示 :

账户 密码(MD5加密前) 角色 权限
admin demo admin *
tea demo teacher teaListView:view , stuListView:view , stuListView:add , stuListView:edit
stu demo student stuListView:view

案例截屏解析

用户登录页面,访问资源前必须先进行用户身份认证,详情参考资源拦截器中的配置信息哟

若要访问教师 / 学生信息管理页面,需要用户拥有teaListView:view / stuListView:view权限

管理员( admin )拥有访问资源的所有权限( * ),所以可以操控学生信息页面中的任何操作

管理员( admin )拥有访问资源的所有权限( * ),所以可以操控教师信息页面中的任何操作

教师( tea )拥有学生页面面的stuListView:view , stuListView:add , stuListView:edit权限,所以删除信息操作为不可见

教师( tea )仅拥有教师信息管理页面的teaListView:view权限,所以增,删,改,操作为不可见状态

学生( stu )仅拥有学生信息管理页面的stuListView:view权限,所以增,删,改,操作为不可见状态

学生( stu )没有访问教师信息管理页面的权限,所以被资源拦截器所拦截继而进入指定的’unauthorized.html’页面面