这是第二个项目,不同于第一个项目,这次使用了intellij IDEA 来进行开发,使用相关的框架是SSM+Shiro,PageHelper 来进行分页管理,Maven来进行项目管理,还使用了MyBatis的逆向工程,这是GitHub项目地址接下来是项目总结。
项目结构
数据库结构
基础配置整合
Maven引入的依赖
1 |
|
web.xml
1 |
|
spring-context.xml
1 |
|
springmvc-context.xml
1 |
|
Mybatis-config.xml
1 |
|
Shiro-context.xml
1 |
|
外部文件
1 | jdbc.jdbcUrl=jdbc:mysql://localhost:3306/ssm_Shiro |
部分代码和相关mapper文件
user
1 | package com.my.ssm.dao; |
部分SQL
1 | <!-- 模糊查询 --> |
role
1 | package com.my.ssm.dao; |
部分SQL
1 | <!-- 特地加个英文名 --> |
permission
1 | package com.my.ssm.dao; |
全部SQL
1 |
|
登录控制
LoginAndLogoutController
这里使用Shiro来进行登录验证,并获取相关角色和权限,以供后面的页面的权限验证。
1 | package com.my.ssm.controller; |
MyRealm
重写验证和授权两个方法,在这里面获取相关权限和角色
1 | package com.my.ssm.Shiro; |
AnyRolesAuthorizationFilter
使一个URL可以供多个角色访问。
1 | package com.my.ssm.Shiro; |
UserController
1 | package com.my.ssm.controller; |
RoleController
1 | package com.my.ssm.controller; |
PermissionController
这里使用Map来进行根节点查询
1 | package com.my.ssm.controller; |
总结
这个项目使用了很常见的框架,非常适合新手练手,其它的具体信息可以前往我的Github仓库下载此项目查看。