Javaweb权限管理设计思路
權限管理業務界面如下:
數據庫方面需要建立六張表:
用戶表:user(用于存放用戶的相關屬性) id,登錄名,用戶姓名。。。
?
角色表:role(用于存放角色):roleId,roleName
?
用戶-角色表:user_role(記錄每一個用戶具有哪些菜單權限):userId,roleId
?
權限表:popedom(用于存放權限相關):mid,pid,name,url,icon,taeget,isparent,isMenu(左側權限列表是用z-tree實現)
?
角色-權限表:role_popedom(記錄每一個用戶具有的角色權限):roleId,mid,pid
?角色是關聯用戶和權限的橋梁
一、遍歷角色下拉菜單
List<Role> roleList = RoleService.findRoleList();
request.setAttribute("roleList",roleList);
二、查詢所有的權限,返回list集合,遍歷在頁面的權限分配上
List<Popedom> popedomList = RoleService.findPopedomList();
request.SetAttribute("poprdpmList",popedomList);
難點分析:1:一個權限占一個tr,父節點顯示在這個tr的右邊的td中,當前父節點的所有的子節點顯示在左邊的一個td中。
2:復選框(選擇角色類型):選父子全選;取消父,子全取消;取消子:最后一個取消,父也取消。(jquery goselect())。
三、角色關聯權限
1.遍歷所有的權限 List<Popedom> list
2.獲取角色id,查詢角色權限關聯表,獲取當前角色所有的功能權限,list<RolePopedom>
分析:
1.用list遍歷所有的角色權限,如果有則復選框被選中。
2.在popedom對象中添加一個flag
如果 flag = 1,則此時頁面復選框被選中
如果 flag = 2,則此時頁面復選框未被選中
3.設置flag的值
遍歷List<Popedom> list,獲取每一個功能權限,如果每個功能權限和當前角色具有的權限相匹配,則flag=1,否則flag=2;
四:角色用戶的查詢(多對多)
1.角色關聯用戶,遍歷所有的用戶 List<User> list
2.獲取角色id,查詢角色表,獲取角色信息,role,
獲取當前角色下有幾個用戶,獲取集合
遍歷List<User> list,獲取系統中每個用戶。
如果每個用戶和當前角色具有的用戶匹配,則flag=1,否則=2
轉載于:https://www.cnblogs.com/bendoudou/p/8531931.html
總結
以上是生活随笔為你收集整理的Javaweb权限管理设计思路的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 谷歌驱动下载链接
- 下一篇: 第12课第3节 字符设备驱动程序之查询方