java web简单权限管理设计.docx
- 文档编号:9189382
- 上传时间:2023-05-17
- 格式:DOCX
- 页数:15
- 大小:20.56KB
java web简单权限管理设计.docx
《java web简单权限管理设计.docx》由会员分享,可在线阅读,更多相关《java web简单权限管理设计.docx(15页珍藏版)》请在冰点文库上搜索。
javaweb简单权限管理设计
最近在做一个网站类型项目,主要负责后台,ui框架选型为jqueryeasyui,项目架构为springmvc+springjdbc,简单易用好上手!
搭建好框架后开始了第一个任务,设计并实现一套简单的权限管理功能。
一套最基本的权限管理包括用户、角色、资源。
数据库设计
我的设计如下:
用户:
user
角色:
role
用户-角色:
user_role
资源:
resource(包括上级菜单、子菜单、按钮等资源)
角色-资源:
role_resource
标准的权限管理系统设计为以上5张表。
注:
用户、用户-角色我就不做说明了,这两个是很简单的两块,用户的crud,以及为用户分配角色(多对多的关系)稍微琢磨一下就清楚了,下面都是针对为角色分配权限的实现
后台实现
展示层采用ztree树
role.jsp
<%@pagecontentType="text/html;charset=UTF-8"%>
<%@includefile="/views/back/include/taglib.jsp"%>
DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http:
//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
//www.w3.org/1999/xhtml">
//打开菜单窗口
functionopenMenuDialog(){
varselected=$("#list").datagrid('getSelected');
if(selected!
=null){
$("#id").val(selected.id);
queryMenus(selected.id);
$("#menuWindow").window("open");
}else{
$.messager.alert('提示',"未选择数据!
");
}
}
//角色-菜单信息入库
functionajaxSubmit(rid,idstr){
$.post("${ctx}/roleMenu/save.jhtml",{"roleId":
rid,"ids":
idstr},function(obj){
$.messager.alert('提示',obj.msg);
$("#menuWindow").window('close');
},'json');
}
--ztree-->
vartree="";
varsetting={
check:
{
chkboxType:
{"Y":
"ps","N":
"s"},//勾选checkbox对于父子节点的关联关系,取消勾选时不关联父
chkStyle:
"checkbox",
enable:
true//是否复选框
},
//数据
data:
{
simpleData:
{
enable:
true
}
}
};
//查询菜单信息
functionqueryMenus(roleId){
$.post('${ctx}/role/treedata.jhtml',{'roleId':
roleId},function(zNodes){
for(vari=0;i if(zNodes[i].isParent){ }else{ //zNodes[i].icon="${ctxStatic}/images/532.ico";//设置图标 } } tree=$.fn.zTree.init($("#tree"),setting,zNodes); tree.expandAll(true);//全部展开 //varnodes=treeObj.getNodes(); },'json'); } //获取选中节点 functiononCheck(){ varrid=$("#id").val(); vartreeObj=$.fn.zTree.getZTreeObj("tree"); varnodes=treeObj.getCheckedNodes(true); varids=newArray(); for(vari=0;i //获取选中节点的值 ids.push(nodes[i].id); //v+=nodes[i].id+","; //alert(nodes[i].id); } ajaxSubmit(rid,ids); } --数据表格--> class="easyui-datagrid"style="width: 100%;"fitcolumns="true" toolbar='#tb'pagination='true'rownumbers='true'singleSelect='true'> --编辑栏--> 5px5px;"> permissionmodule="role"code="add"> permission> permissionmodule="role"code="edit"> permission> permissionmodule="role"code="delete"> permission> permissionmodule="role"code="authority"> permission> --搜索项--> 5px;padding-left: 5px"> 用户名: 110px"/> 创建日期: 110px"> 至: 110px">
--权限窗口-->
true,iconCls: 'icon-save',footer: '#menuWindowfooter'"style="width: 350px;height: 420px;padding: 10px"> 10px20px;">
5px;text-align: right;"> 'icon-save'">提交