BOS项目笔记 第8天
今天内容安排:
1、权限管理(初始化、查询、添加)
2、角色管理(添加、查询)
3、用户管理(添加、查询)
4、修改自定义Realm中的授权方法(基于数据库实现)
5、使用ehcache缓存权限数据
6、系统左侧菜单根据登录人的权限动态展示
1. 权限管理
1.1 初始化权限数据
执行sql脚本文件初始化权限数据:
1.2 权限分页查询
第一步:修改页面中datagrid的URL地址,访问FunctionAction的pageQuery的分页查询方法
第二步:创建FunctionAction
第三步:配置struts.xml
解决分页查询问题:
l 方式一:修改权限表的字段和对应的权限类中的属性page
l 方式二:从model对象中获取page注入到pagebean对象中
1.3 权限添加功能
第一步:修改添加页面中的combobox的URL地址,查询所有的权限,展示到下拉框中
第二步:在FunctionAction中提供listajax方法
第三步:修改combobox的name属性
第四步:为保存按钮绑定事件提交表单
第五步:在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缓存权限数据
第一步:导入ehcache的jar包项目中
第二步:提供ehcache的xml配置文件(可以从jar包中获得)
第三步:在spring配置文件中注册一个缓存管理器,并注入给安全管理器
6. 系统左侧菜单根据登录人的权限展示
第一步:修改index.jsp页面中ajax方法的URL
第二步:在FunctionAction中提供findMenu方法
第三步:在FunctionService中提供方法
第四步:在FunctionDao中扩展方法