权限管理系统在去年的项目中使用过,后来一直想单独拿出来做一个权限管理系统,一直拖着,今年做的博客当中也使用到了,趁着有时间就把这个Demo写出来了,使用的是SSM框架 + Maven实现的,利用过滤器和URL来控制用户访问的页面。本系统没有使用Apache Shiro。
源代码地址:https://github.com/ShrMus/PrivilegeSystem
我写的权限管理系统主要由权限、角色、用户组成。有的权限管理系统也包括用户分组,那样的我就没写了,如果理解了由以上3个组成的权限管理系统,相信聪明的你也能实现分组的权限。
先来说说设计的事情
解释一下,一个角色拥有多个权限,一个权限可以被多个角色拥有;一个用户可以拥有多个权限,一个权限可以被多个用户拥有;一个角色可以被多个用户拥有,一个用户可以拥有多个角色。
接下来是数据库表,我使用的是MySQL数据库。
权限表Privilege
字段名 |
数据类型 |
备注 |
privilege_id |
int |
逻辑主键,自增 |
privilege_name |
varchar(50) |
权限名 |
privilege_url |
varchar(255) |
权限url |
privilege_parent_id |
int |
父权限id,例如角色管理是父权限,角色增、删、改、查是子权限 |
角色表Role
字段名 |
数据类型 |
备注 |
role_id |
int |
逻辑主键,自增 |
role_name |
varchar(20) |
角色名 |
role_description |
varchar(255) |
描述 |
用户表User
字段名 |
数据类型 |
备注 |