BOS项目 第8天(权限管理添加、角色管理添加、用户管理添加、shiro权限框架使用ecache缓存) 1. 权限管理 2. 角色管理 3. 用户管理 4. 修改BOSRealm中的授权方法 5. 使用ehcache缓存权限数据 6. 系统左侧菜单根据登录人的权限展示

BOS项目 第8天(权限管理添加、角色管理添加、用户管理添加、shiro权限框架使用ecache缓存)
1. 权限管理
2. 角色管理
3. 用户管理
4. 修改BOSRealm中的授权方法
5. 使用ehcache缓存权限数据
6. 系统左侧菜单根据登录人的权限展示

BOS项目笔记 第8

 

今天内容安排:

1、权限管理(初始化、查询、添加)

2、角色管理(添加、查询)

3、用户管理(添加、查询)

4、修改自定义Realm中的授权方法(基于数据库实现)

5、使用ehcache缓存权限数据

6、系统左侧菜单根据登录人的权限动态展示

 

1.1 初始化权限数据

执行sql脚本文件初始化权限数据:

 

 

1.2 权限分页查询

 

第一步:修改页面中datagridURL地址,访问FunctionActionpageQuery的分页查询方法

 

第二步:创建FunctionAction

 

第三步:配置struts.xml

 

解决分页查询问题:

方式一:修改权限表的字段和对应的权限类中的属性page

方式二:从model对象中获取page注入到pagebean对象中

1.3 权限添加功能

 

第一步:修改添加页面中的comboboxURL地址,查询所有的权限,展示到下拉框中

 

第二步FunctionAction中提供listajax方法

 

 

第三步:修改comboboxname属性

 

第四步:为保存按钮绑定事件提交表单

 

第五步:在Action中提供add方法,保存一个权限数据

 

Service代码:

 

2. 角色管理

2.1 添加角色功能

 

第一步:使用ztree展示权限树,开启ztree勾选效果

 

第二步:修改ajax方法的URL地址,访问Action,查询所有的权限数据,返回简单json数据作为ztree的节点数据

 

第三步:为保存按钮绑定事件,提交表单,选中的节点没有提交,使用ztree提供的API获得当前选中的节点,赋予指定隐藏域

 

 

 

第四步:创建RoleAction,提供add方法

 

Service代码:

 

第五步:配置struts.xml

 

3. 用户管理

3.1 添加用户功能

 

第一步:发送ajax请求,获取所有的角色数据,返回json,构造checkbox

 

 

第二步RoleAction中提供listajax方法

 

第三步:完善ajax方法的回调函数

 

 

第四步:为保存按钮绑定事件提交表单

 

第五步:在UserAction中提供add方法,保存用户

 

Service代码:

 

第六步:配置struts.xml

 

第七步:在User类中提供getFormatBirthday方法,返回的json中含有formateBrithday字段

 

第八步:修改userlist.jsp页面中field字段名称

 

 

 

4. 修改BOSRealm中的授权方法

 

FunctionDao中提供根据用户id查询权限的方法:

 

5. 使用ehcache缓存权限数据

第一步:导入ehcachejar包项目中

第二步:提供ehcachexml配置文件(可以从jar包中获得)

 

第三步:在spring配置文件中注册一个缓存管理器,并注入给安全管理器

 

6. 系统左侧菜单根据登录人的权限展示

第一步:修改index.jsp页面中ajax方法的URL

 

第二步:在FunctionAction中提供findMenu方法

 

第三步:在FunctionService中提供方法

 

第四步:在FunctionDao中扩展方法