easyUI——访问权限

1.权限
RBAC模型(Role-Based Access Control:基于角色的访问控制)

RBAC的组成:用户、角色和权限。

User(用户):每个用户都有唯一的UID识别,并被授予不同的角色
Role(角色):不同角色具有不同的权限
Permission(权限):访问权限
用户-角色映射:用户和角色之间的映射关系
角色-权限映射:角色和权限之间的映射

   1.1 五张表的权限
       
       用户信息表(T_User)
       角色信息表(T_Role)
       模块信息表(T_Module)
       
       用户角色表(T_User_Role)
       角色模块表(T_Role_Module)
       角色权限表

   1.2 关系
            用户角色表(T_User_Role)      角色模块表(T_Role_Module)
       用户------------------------>角色------------------------->权限
     (T_User)                    (T_Role)                      (T_Module)

public List<Module> listModel(int pid) {
        
        List<Module> list = dao.listModel(pid);
        
        for(Module m: list) {
            if(m.getUrl() == null || "".equals(m.getUrl().trim())) {
                m.setChildren(listModel(m.getId()));
            }
        }
        
        return list;
    }

 界面代码:

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>后台管理首页</title>
<!-- 通过include指令引入easyui-link.jsp页面 -->
<%@ include file="/static/common/easyui-link.jsp"%>
<script type="text/javascript">
	console.log(xpath);
</script>
 
<!-- 树形菜单 -->
<script type="text/javascript">
	$(function() {
		$("#menuTree").tree({
			url : xpath + '/PromissionList',
			onClick : function(node) {
				addoDiv(node);
			}
		});
	});
 
	/* 封装一个新增方法 */
	// add a new tab panel    
	function addoDiv(node) {
		/* 设置点击上一级菜单无选项卡出现 */
		if (node.id == -1) {
			return;
		}
		/* 通过exists判断选项卡是否存在 */
		let flag = $('#oDiv').tabs('exists', node.text);
		if (flag == true) {
			$('#oDiv').tabs('select', node.text);
			return;
		}
 
		$('#oDiv').tabs(
				'add',
				{
					title : node.text,
					content : node.text,
					closable : true,
 
				});
	}
</script>
</head>
<body>
	<div data-options="fit:true" class="easyui-layout">
		<!-- 头部 -->
		<div data-options="region:'north',title:'后台管理系统',split:true"
			style="height: 30px;"></div>
		<div data-options="region:'south',title:'首页底部',split:true"
			style="height: 100px;">
			<div class="form-group" style="margin-top: 20px;">
				<p>&copy;&copy;所有版权信息归碰哒鬼集团所有</p>
			</div>
		</div>
		<div data-options="region:'west',title:'后台菜单',split:true"
			style="width: 160px;">
			<ul id="menuTree" class="easyui-tree">
 
 
			</ul>
		</div>
		<div data-options="region:'center',title:'内容展示📕'"
			style="padding: 5px; background: #eee;">
			<!-- 选项卡 -->
			<div id="oDiv" class="easyui-tabs" data-options="fit:true"></div>
 
		</div>
	</div>
</body>
</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值