springrain技术详解(2)-权限表结构

作者: admin 分类: shiro, spring, springrain 发布时间: 2013-12-11 09:38 ė 6 springrain技术详解(2)-权限表结构已关闭评论

在实际项目中,权限控制是必须要放到数据库管理的,我们来看下springrain是怎么设计权限的表结构吧
先上ER图

er-table

t_org是部门表,考虑到员工兼职,所以有t_user_org 中间表.

t_menu是菜单表,字段 type 是标示是菜单资源还是普通资源  菜单资源的意义就是导航菜单,会显示到左侧导航,普通资源就是菜单内的按钮或者提交路径,这个时候 pid的意义就比较重要了,pid就是上级菜单的id,对于页面普通资源来说,就是相应的导航菜单的url,这样在管理界面能够树形显示出来.

用户正常登陆后,根据用户的角色查询角色拥有的菜单权限,通过树形菜单显示导航,示例效果图如下:user-role-men

 

每个菜单下一般拥有增删改查导入导出等普通资源,这些也是有权限控制的,后台分配权限示例如下图:

menu-resource

图中 博客管理 是一个导航菜单,其中包含删除博客等动作的普通资源url. 通过 t_menu表中 type 字段进行标示菜单资源或者普通资源,pid字段标示这些普通资源属于 博客管理 这个菜单下.

删除,批量删除等其实就是前台操作的按钮,通过shiro的标签,可以控制按钮是否显示,shiro官方提供了jstl的标签库,springrain是使用了freemarker标签.

以博客管理为例代码截图如下:

qx_button

就此 就能灵活分配和管理每个操作的权限.

对于通用的url拦截权限来说,这几张表足够用了.

本文出自weicms.net,转载时请注明出处及相应链接。

本文永久链接: http://www.weicms.net/2013/12/11/springrain2-basetable.html

0
Ɣ回顶部