day61項(xiàng)目第十天權(quán)限管理權(quán)限設(shè)計(jì)提綱_第1頁(yè)
day61項(xiàng)目第十天權(quán)限管理權(quán)限設(shè)計(jì)提綱_第2頁(yè)
day61項(xiàng)目第十天權(quán)限管理權(quán)限設(shè)計(jì)提綱_第3頁(yè)
day61項(xiàng)目第十天權(quán)限管理權(quán)限設(shè)計(jì)提綱_第4頁(yè)
day61項(xiàng)目第十天權(quán)限管理權(quán)限設(shè)計(jì)提綱_第5頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、1.1權(quán)限管理介紹什么權(quán)限哪些功能可以被哪些用戶(hù)使用用戶(hù)可以使用哪些功能圖解權(quán)限:系統(tǒng)日志用戶(hù)要操作功能,在BS項(xiàng)目中則需要發(fā)送請(qǐng)求訂單查詢(xún)添加類(lèi)別添加商品思考:如何知道用戶(hù)是否有某個(gè)功能的權(quán)限呢添加用戶(hù)用戶(hù)管理查看日志添加商品userAction_manager.actionlogAction_query.action goodion_save.action權(quán)限解決方案:如何知道用戶(hù)有哪些權(quán)限: 把用戶(hù)擁限的 URL起來(lái), 根據(jù)URL 判斷就知道它是否限用戶(hù)的權(quán)限是根據(jù)項(xiàng)目的需求動(dòng)態(tài)變化的,所以權(quán)限的本身也需要用戶(hù)分配、動(dòng)態(tài)的回收, 權(quán)限要?jiǎng)討B(tài)給權(quán)限解決方案 A:用戶(hù)權(quán)限添加用戶(hù)userAc

2、tion_add刪除用戶(hù)userAction_delete查看用戶(hù)userAction_list權(quán)限模型 B:重點(diǎn)回顧:權(quán)限就是控制功能的使用(功能對(duì)應(yīng)著URL)。對(duì)功能的控制就是對(duì)URL 的控制。在的程序中,一個(gè)功能對(duì)應(yīng)一個(gè)或兩個(gè) URL:例如列表或刪除功能,只對(duì)應(yīng)一個(gè) URL.例如添加或修改功能,對(duì)應(yīng)兩個(gè) URL:.add, .addUI權(quán)限的實(shí)現(xiàn)步驟:1.初始化權(quán)限數(shù)據(jù):項(xiàng)目做好后,把需要控制的權(quán)限 URL到權(quán)限表中2.超級(jí)管理員:此管理員. 默認(rèn)擁有所分配權(quán)限限, 以后就通過(guò)此管理員給用戶(hù)給角色分配權(quán)限,項(xiàng)目中創(chuàng)建若干個(gè)角色, 給每個(gè)角色給用戶(hù)分配角色, 用戶(hù)的權(quán)限就是角色權(quán)限的集合使

3、用權(quán)限登錄、注銷(xiāo)、主頁(yè)面。左側(cè)的菜單是根據(jù)權(quán)限顯示的。(沒(méi)限的菜單不可見(jiàn))右側(cè)頁(yè)面中的是根據(jù)權(quán)限顯示的。(沒(méi)限的刪除和更新不可見(jiàn))權(quán)限分類(lèi):有些權(quán)限默認(rèn)所有用戶(hù)都擁有. 例如注銷(xiāo)、登錄.創(chuàng)建角色與權(quán)限的表結(jié)構(gòu)(他們是多對(duì)多的關(guān)系,創(chuàng)建完畢之后有 3)/*-權(quán)限表用來(lái)權(quán)限名稱(chēng)和權(quán)限URL*/drop table if exists role_privilege; drop table if exists privilege; drop table if exists role;create table privilege (not null auto_increment,用戶(hù)權(quán)限添加用戶(hù) use

4、rAction_add/addUI刪除用戶(hù) userAction_delete*查看用戶(hù) userAction_list*角色*/* 權(quán)限名稱(chēng) */pname varchar(200),/* 權(quán)限URL地址 */ purl varchar(200),/* 權(quán)限菜單所屬的父菜單ID */ parentId,/* 此權(quán)限功能是否要顯示在左邊 */ isleft,primary key();create table role (ridnot null auto_increment,/* 角色名稱(chēng) */rname varchar(200),/* 角色介紹 */detail varchar(200),

5、primary key(rid);create table role_privilege (rid,primary key(rid,);alter table privilege add constraforeign key (parentId) referenprivilege ();alter table role_privilege add constraforeign key (rid) referenrole (rid);alter table role_privilege add constraforeign key () referenprivilege ();SELECT *

6、FROM privilege; SELECT * FROM role;SELECT * FROM role_privilege;INSERTO privilege (pname,purl,parentId,isleft) VALUES (商品管理,goodion_all,null,true);INSERTO privilege (pname,purl,parentId,isleft) VALUES (類(lèi)別管理,categoryAction_all,null,true);INSERTO privilege (pname,purl,parentId,isleft) VALUES (訂單管理,for

7、derAction_all,null,true);INSERTO privilege (pname,purl,parentId,isleft) VALUES (會(huì)員管理,userion_all,null,true);INSERTO privilege (pname,purl,parentId,isleft) VALUES (角色管理,roleAction_all,null,true);INSERTO privilege (pname,purl,parentId,isleft) VALUES (商品添加,goodion_saveUI,1,true);INSERTO privilege (pnam

8、e,purl,parentId,isleft) VALUES (商品添加實(shí)現(xiàn),goodion_save,1,false);INSERTO privilege (pname,purl,parentId,isleft) VALUES (商品查詢(xún),goodion_queryUI,1,true);INSERTO privilege (pname,purl,parentId,isleft) VALUES (商品查詢(xún)實(shí)現(xiàn),goodion_query,1,false);INSERTO privilege (pname,purl,parentId,isleft) VALUES (商品更新,goodion_up

9、dateUI,1,true);INSERTO privilege (pname,purl,parentId,isleft) VALUES (商品更新實(shí)現(xiàn),goodion_update,1,false);INSERTO privilege (pname,purl,parentId,isleft) VALUES (商品刪除,goodion_delete,1,true);INSERTO privilege (pname,purl,parentId,isleft) VALUES (類(lèi)別添加,categoryAction_saveUI,2,true);INSERTO privilege (pname,p

10、url,parentId,isleft) VALUES (類(lèi)別添加實(shí)現(xiàn),categoryAction_save,2,false);INSERTO privilege (pname,purl,parentId,isleft) VALUES (類(lèi)別查詢(xún),categoryAction_queryUI,2,true);INSERTO privilege (pname,purl,parentId,isleft) VALUES (類(lèi)別查詢(xún)實(shí)現(xiàn),categoryAction_query,2,false);INSERTO privilege (pname,purl,parentId,isleft) VALUE

11、S (類(lèi)別更新,categoryAction_updateUI,2,true);INSERTO privilege (pname,purl,parentId,isleft) VALUES (類(lèi)別更新實(shí)現(xiàn),categoryAction_update,2,false);INSERTO privilege (pname,purl,parentId,isleft) VALUES (類(lèi)別刪除,categoryAction_delete,2,true);INSERTO privilege (pname,purl,parentId,isleft) VALUES (訂單查詢(xún),forderAction_quer

12、yUI,3,true);INSERTO privilege (pname,purl,parentId,isleft) VALUES (訂單查詢(xún)實(shí)現(xiàn),forderAction_query,3,false);INSERTO privilege (pname,purl,parentId,isleft) VALUES (訂單修改,forderAction_updateUI,3,true);查詢(xún)某一個(gè)角色的權(quán)限信息SQL 語(yǔ)句:/*查詢(xún)角色的權(quán)限信息*/SELECT r.*,p.* FROM role r INNER JOIN role_privilegONINSERTO privilege (pnam

13、e,purl,parentId,isleft) VALUES (訂單修改實(shí)現(xiàn),forderAction_update,3,false);INSERTO privilege (pname,purl,parentId,isleft) VALUES (訂單刪除,forderAction_delete,3,true);INSERTO privilege (pname,purl,parentId,isleft) VALUES (會(huì)員查詢(xún),userion_queryUI,4,true);INSERTO privilege (pname,purl,parentId,isleft) VALUES (會(huì)員查詢(xún)實(shí)

14、現(xiàn),userion_query,4,false);INSERTO privilege (pname,purl,parentId,isleft) VALUES (會(huì)員修改,userion_updateUI,4,true);INSERTO privilege (pname,purl,parentId,isleft) VALUES (會(huì)員修改實(shí)現(xiàn),userion_update,4,false);INSERTO privilege (pname,purl,parentId,isleft) VALUES (會(huì)員刪除,userion_delete,4,true);INSERTO privilege (pn

15、ame,purl,parentId,isleft) VALUES (角色添加,roleAction_saveUI,5,true);INSERTO privilege (pname,purl,parentId,isleft) VALUES (角色添加實(shí)現(xiàn),roleAction_save,5,false);INSERTO privilege (pname,purl,parentId,isleft) VALUES (角色查詢(xún),roleAction_queryUI,5,true);INSERTO privilege (pname,purl,parentId,isleft) VALUES (角色查詢(xún)實(shí)現(xiàn)

16、,roleAction_query,5,false);INSERTO privilege (pname,purl,parentId,isleft) VALUES (角色修改,roleAction_updateUI,5,true);INSERTO privilege (pname,purl,parentId,isleft) VALUES (角色修改實(shí)現(xiàn),roleAction_update,5,false);INSERTO privilege (pname,purl,parentId,isleft) VALUES (角色刪除,roleAction_delete,5,true);SELECT * F

17、ROM privilege; SELECT * FROM role;SELECT * FROM role_privilege;INSERT O role (rname,detail) VALUES ( ,擁有基本的權(quán)限); INSERT O role_privilege (rid, ) values (1,1);INSERT O role_privilege (rid, ) values (1,23); INSERT O role_privilege (rid, ) values (1,13); INSERT O role_privilege (rid, ) values (1,11);權(quán)限的

18、實(shí)體類(lèi)為:角色的實(shí)體為:角色的文件為:文件為:權(quán)限的完成角色的 CRUD 操作由于權(quán)限是要先賦值給角色的,所以先完成角色的 CRUD 操作給角色, 如果此角色已經(jīng)限則回顯Action代碼如下:批注 s1: public StringgetPrivilegd(Set privileges)/ TODO Auto-generated method stub StringBuffer buffer=new StringBuffer(); for(Privilege privilege:privileges)buffer.append(privilege.get(); buffer.append(,)

19、;buffer.deleteCharAt(buffer.length()-1);return buffer.toString();public String updateUI() / 獲取當(dāng)前角色信息, 其中包括, 權(quán)限信息,為了方便回顯 Role role = roleService.get(m .getRid(); ses .put(role, role);/ 獲取當(dāng)前用戶(hù)的權(quán)限 用于回顯String s =privilegeService.getPrivilegd(role.getPrivileges();request.put(s,s);/ 查詢(xún)系統(tǒng)所限, 因?yàn)榇斯δ艹R?jiàn),而且權(quán)限不會(huì)改變,所以可以到app中 request.put(privileges, privile

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論