BOS物流项目笔记(12)

news/2024/7/7 7:51:55

1、学习计划

(1)角色管理

  1. 添加角色功能

  2. 角色分页查询

(2)用户管理

  1. 添加用户功能

  2. 用户分页查询

(3)修改Realm中授权方法(查询数据库)

(4)使用ehcache缓存权限数据

  1. 添加ehcache依赖

  2. 配置缓存管理器

(5)系统菜单根据登录人展示

  1. 调整页面ajax请求地址

  2. 服务端查询菜单数据

2、角色管理

2.1、添加角色功能

(1)页面调整

页面:WEB-INF/pages/admin/role_add.jsp

 第一步:修改页面,使用ztree勾选效果(checkbox)

第二步:修改ajax方法的请求URL地址

 

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

 

 (2)服务端实现

创建角色管理Action、Service、Dao

 

Service代码:

 

配置struts.xml

 2.2、角色分页查询

修改role.jsp页面中datagrid的URL地址

在RoleAction中提供分页查询方法:

 3、用户管理

3.1、添加用户

页面:WEB-INF/pages/admin/userinfo.jsp

(1)页面调整

第一步:发送ajax请求,获取角色数据,在回调函数中动态展示角色数据,展示为checkbox

<tr>
	           		<td>选择角色:</td>
	           		<td colspan="3" id="roleTD">
	           			<script type="text/javascript">
	           				$(function(){
	           					//页面加载完成后,发送ajax请求,获取所有的角色数据
	           					$.post('roleAction_listajax.action',function(data){
	           						//在ajax回调函数中,解析json数据,展示为checkbox
	           						for(var i=0;i<data.length;i++){
	           							var id = data[i].id;
	           							var name = data[i].name;
	           							$("#roleTD").append('<input id="'+id+'" type="checkbox" name="roleIds" value="'+id+'"><label for="'+id+'">'+name+'</label>');
	           						}
	           					});
	           				});
	           			</script>
	           		</td>
	           	</tr>

 第二步:在RoleAction中提供listajax方法,查询所有角色,返回json数据

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

 

(2)服务端实现

在UserAction中提供add方法,保存一个用户

 

Service代码

 

配置struts.xml

 3.2、分页查询

第一步:修改userlist.jsp页面中datagrid的URL地址

在数据表格中,修改field,由电话修改为角色

 

第二步:在UserAction中提供分页查询方法

 

第三步:在User类中提供getRoleNames方法,getBirthdayString方法

 

 4、修改Realm中授权方法(查询数据库)

在FunctionDao中扩展方法,根据用户id查询对应的权限

5、使用ehcache缓存权限数据 

ehcache是专门缓存插件,可以缓存Java对象,提高系统性能。

(1)ehcache提供的jar包:

第一步:在pom.xml文件中引入ehcache的依赖

 

第二步:在项目中提供ehcache的配置文件

 

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

 6、系统菜单根据登录人动态展示

第一步:修改index.jsp页面中ajax方法的请求地址

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

第三步:在Service中提供方法

Dao代码:

注意:需要在Function类中提供getpId方法

 

 

 

 

 

 

 


http://www.niftyadmin.cn/n/1808716.html

相关文章

webstorm添加vue模板支持

http://www.jianshu.com/p/142dae4f8b51 转载于:https://www.cnblogs.com/mafeng/p/6221287.html

给初学者的20个CSS实用建议

英文原文&#xff1a;20-useful-css-tips-for-beginners&#xff0c;编译&#xff1a;杨礼鑫 过去就连一个镜像站点&#xff0c;我们都依靠大量的开发人员和程序员进行维护。得益于CSS和它的灵活性使得样式能够从代码中被独立抽离出来&#xff0c;从而让一个只具备基本CSS理论的…

java 将字符编码为一个字节序列_Java 字符编码归纳总结

String newStr new String(oldStr.getBytes(), "UTF-8");java中的String类是按照unicode进行编码的&#xff0c;当使用String(byte[] bytes, String encoding)构造字符串时&#xff0c;encoding所指的是bytes中的数据是按照那种方式编码的&#xff0c;而不是最后产生…

JavaBeans wiki 摘译

20161013最新提示&#xff1a;既然来到这了&#xff0c;为什么不看看 JavaBeans 官方文档学习 &#xff1f; 鉴于Spring的beans包遵守JavaBean specs&#xff0c;有必要认真研究下JavaBean specs。 先看看wiki上是怎么说的&#xff1a; 定义 Java平台下&#xff0c;JavaBeans是…

BOS物流项目笔记(13)

1、学习计划 &#xff08;1&#xff09;Quartz概述 Quartz介绍和下载 入门案例 Quartz执行流程 cron表达式 &#xff08;2&#xff09;在BOS项目中使用Quartz创建定时任务 &#xff08;3&#xff09;在BOS项目中使用JavaMail发送邮件 &#xff08;4&#xff09;HighChar…

android的Fragment详解

Fragment要点 Fragment作为Activity界面的一部分组成出现可以在一个Activity中同时出现多个Fragment&#xff0c;并且&#xff0c;一个Fragment亦可在多个Activity中使用。在Activity运行过程中&#xff0c;可以添加、移除或者替换Fragment&#xff08;add()、remove()、replac…

寻求答案,而不是方案

早上八点按时起床&#xff0c;吃过早餐&#xff0c;去教研室工作。就这样平平常常&#xff0c;也不会觉得痛苦&#xff0c;或是压力太大。 早上骑了自行车&#xff0c;是打算邮寄礼物的。这也算是一次小小的突破&#xff0c;事实上没有我想的那么困难&#xff0c;但每次小小的突…

BOS物流项目笔记(14)

1、学习计划 &#xff08;1&#xff09;Linux部署 安装jdk 安装tomcat 安装MySQL 将项目发布到tomcat &#xff08;2&#xff09;扩展资料 &#xff08;3&#xff09;面试问题总结 2、Linux部署 2.1、安装jdk 第一步&#xff1a;获取Linux系统中jdk安装包 第二步&…