




下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、、系統(tǒng)功能分析1.系統(tǒng)的功能模塊系統(tǒng)主要完成權(quán)限授予及權(quán)限驗(yàn)證的功能, 權(quán)限授予實(shí)現(xiàn)某個(gè)用戶對(duì)模塊的某個(gè)功 能的操作許可,組成權(quán)限數(shù)據(jù)庫(kù)。為用戶分配角色來(lái)實(shí)現(xiàn)授權(quán)。權(quán)限驗(yàn)證實(shí)現(xiàn)通過實(shí)現(xiàn) 定義好的權(quán)限數(shù)據(jù)庫(kù),判斷該用戶是否對(duì)某個(gè)模塊的某個(gè)功能具有操作權(quán)限,權(quán)限驗(yàn)證 采用過濾器來(lái)設(shè)計(jì),用戶在應(yīng)用系統(tǒng)中進(jìn)行所有操作都需要經(jīng)過這一層過濾器。系統(tǒng)設(shè)計(jì)包括以下5個(gè)模塊:驗(yàn)證權(quán)限:判斷用戶對(duì)某一個(gè)模塊的操作是否合法。圖1系統(tǒng)功能結(jié)構(gòu)圖2.技術(shù)選型系統(tǒng)采用業(yè)界常用的J2EE框架進(jìn)行組合。要求成熟穩(wěn)定的系統(tǒng)框架以滿足系統(tǒng)的松耦合性、擴(kuò)張性和可維護(hù)性。權(quán)限管理系統(tǒng)采用Struts+Hibernate+S prin
2、g三種框架組 合開發(fā)。表示層和控制層框架:選擇業(yè)界廣泛使用而且成熟穩(wěn)定的業(yè)務(wù)邏輯層框架:選擇輕量級(jí)Spring Framework。持久層框架:選擇Hibernate。3.系統(tǒng)邏輯結(jié)構(gòu)分析系統(tǒng)采用Struts+Hibernate+Spring架構(gòu)進(jìn)行開發(fā)。在體系結(jié)構(gòu)上將系統(tǒng)劃分為四個(gè)層次:表示層、控制層、業(yè)務(wù)層、持久層。表示層和控制層融合緊密,采用struts框 架;持久層采用Hibernate框架;業(yè)務(wù)層和持久層統(tǒng)一使用spring框架支撐。Struts框架接收來(lái)自表示層請(qǐng)求“”,請(qǐng)求參數(shù)封裝在“xxxForm”中,struts依據(jù)人員管理: 創(chuàng)建、更新、刪除、查詢?nèi)藛T信息、人員角色維護(hù)。功
3、能管理: 創(chuàng)建、更新、刪除、查詢功能信息。模塊管理: 創(chuàng)建、更新、刪除、查詢模塊信息、模塊功能維護(hù)。角色管理: 創(chuàng)建、更新、刪除、查詢角色信息、角色權(quán)限維護(hù)。Struts。配置信息調(diào)用控制層實(shí)例“xxxAction”的相關(guān)方法,該方法從“xxxForm”中取回請(qǐng)求參數(shù),并從Spring Bean容器中獲取業(yè)務(wù)層接口 “xxxMa nager”的一個(gè)實(shí)例“xxxManagerimpl”。在Spring Bean容器初始化“xxxManagerimpl” 實(shí)例時(shí),會(huì)根據(jù)beanid=“xxxDAO獲取對(duì)應(yīng)的“xxxDAO的一個(gè)實(shí)例,并賦值給“xxxManagerimpl”的“XXXDAO接口。xx
4、xManagerimpl實(shí)例會(huì)調(diào)用持久層接口“xxxDAO實(shí)例的方法完成具體的操作,并返回操作結(jié)果。圖2權(quán)限管理模型結(jié)構(gòu)圖表示層(view):表示層主要負(fù)責(zé)在前臺(tái)JSP頁(yè)面上展示控制層提供的數(shù)據(jù),提供操作界面,將用戶 的操作請(qǐng)求提交給控制層??刂茖?Controller)控制具體的業(yè)務(wù)流程。接受來(lái)自表示層的用戶操作請(qǐng)求,調(diào)用業(yè)務(wù)層的接口完成用戶請(qǐng)求的處理,并將處理結(jié)果和數(shù)據(jù)保存到request對(duì)象中,控制流程轉(zhuǎn)向表示層輸出處理結(jié)果和數(shù)據(jù)。表示層和控制層結(jié)合起來(lái)開發(fā),采用struts框架,控制層的配置是在配置文件中定義的,控制層和表示層之間的接口也需要在該文件中定義。業(yè)務(wù)層(Manager):業(yè)
5、務(wù)層主要負(fù)責(zé)業(yè)務(wù)模塊的邏輯應(yīng)用設(shè)計(jì),采用Spring框架。首先需要規(guī)劃業(yè)務(wù)層向控制層提供的接口, 然后設(shè)計(jì)器接口的實(shí)現(xiàn)類, 業(yè)務(wù)層接口的具體實(shí)現(xiàn)需要調(diào)用到已 定義的DACg的接口。接著在Spring的配置文件中配置接口與實(shí)現(xiàn)的關(guān)聯(lián),以及設(shè)置相 關(guān)的DAC接口。在控制層中只需要調(diào)用業(yè)務(wù)層接口就可以很方便的進(jìn)行業(yè)務(wù)處理。封裝 業(yè)務(wù)層的業(yè)務(wù)邏輯有利于業(yè)務(wù)邏輯的獨(dú)立性和可重用性。持久層(DAC):接受業(yè)務(wù)層的調(diào)用,完成數(shù)據(jù)的持久化工作。采用Hibernate技術(shù)實(shí)現(xiàn),業(yè)務(wù)層和持久層都采用Spring框架,首先需要定義業(yè)務(wù)層與持久層之間的接口,然后在設(shè)計(jì)接口的實(shí)現(xiàn),最后在Spring的配置文件中定義此接
6、口關(guān)聯(lián)的實(shí)現(xiàn)類。在業(yè)務(wù)層中調(diào)用此接口來(lái)進(jìn)行數(shù)據(jù)業(yè)務(wù)的處理,而不關(guān)心此接口的具體實(shí)現(xiàn)類是哪個(gè)類,所有接口實(shí)現(xiàn)調(diào)用的內(nèi)部細(xì)節(jié)全部封裝在Spring框架中。DAC層的數(shù)據(jù)源,以及有關(guān)數(shù)據(jù)庫(kù)連接的參數(shù)都需要在Spring的配置文件中配置。二、數(shù)據(jù)庫(kù)表結(jié)構(gòu)設(shè)計(jì)1.系統(tǒng)數(shù)據(jù)模型權(quán)限管理系統(tǒng)的實(shí)體有人員、角色、模塊、功能,這四個(gè)實(shí)體之間的關(guān)系是:一個(gè)人員可以具有多個(gè)角色,多個(gè)人員也可以屬于同一個(gè)角色;一個(gè)模塊可以有多個(gè)功能,3權(quán)限管理系統(tǒng)數(shù)據(jù)模型圖2.系統(tǒng)表設(shè)計(jì)人員信息表staff序號(hào)字段描述類型長(zhǎng)度主鍵可空1StaffID編號(hào)Int是否2StaffName名稱Varchar(50)否否3Staff Pwd
7、密碼Varchar(50)否否角色表role序號(hào)字段描述類型長(zhǎng)度主鍵可空1RoleID角色I(xiàn)DInt是否2RoleName角色名稱Varchar(50)否否3Descri pti on描述Varchar(200)否否人員角色關(guān)系表StaffRole序號(hào)字段描述類型長(zhǎng)度主鍵可空1ID唯一標(biāo)識(shí)Int是否2RoleID角色I(xiàn)DInt否否3StaffID人員IDInt否否一個(gè)功能也可以屬于多個(gè)模塊; 一個(gè)角色對(duì)多個(gè)模塊的多個(gè)功能也可以有多個(gè)權(quán)限,多個(gè)角色也可以擁有同一個(gè)權(quán)限。這四個(gè)實(shí)體之間關(guān)系如下:模塊表Module序號(hào)字段描述類型長(zhǎng)度主鍵可空1ModuleID模塊IDInt是否2ModuleName
8、模塊名稱Varchar(50)否否3ModuleURL模塊路徑Varchar(200)否否功能項(xiàng)表Function序號(hào)字段描述類型長(zhǎng)度主鍵可空1Fun cti onlD功能IDInt是否2FunctionN ame功能名稱Varchar(50)否否3Descri pti on描述Varchar(200)否否權(quán)限表Auth(模塊功能表)序號(hào)字段描述類型長(zhǎng)度主鍵可空1AuthID權(quán)限IDInt是否2ModuleID模塊IDInt否否3Fun cti onlD功能IDInt否否角色權(quán)限表RoleAuth序號(hào)字段描述類型長(zhǎng)度主鍵可空1ID唯一標(biāo)識(shí)Int是否2AuthID權(quán)限IDInt否否3RoleID
9、角色I(xiàn)DInt否否3.創(chuàng)建popedom(權(quán)限系統(tǒng))數(shù)據(jù)庫(kù)腳本create table staff(StaffID int auto_i ncreme nt p rimary key, StaffName varchar(50) uniq ue.Staff Pwd varchar(50) not null)ENGINE=I nn oDB DEFAULT CHARSET=gbk; create table role(RoleID int auto_i ncreme nt p rimary key,RoleName varchar(50) uniq ue,Descri pti on varchar
10、(200) not n ull)ENGINE=I nn oDB DEFAULT CHARSET=gbk; create table staffrole(ID int auto_i ncreme nt p rimary key,RoleID int not null,StaffID int not null,CONSTRAINT staffrole_role_fk FOREIGN KEY (RoleID) REFERENCES role (RoleID), CONSTRAINTstaffrole_staff_fk FOREIGN KEY (StaffID) REFERENCES staff (S
11、taffID) )ENGINE=InnoDB DEFAULTCHARSET=gbk;create table module(ModuleID int auto_increment primary key,ModuleName varchar(50) unique,ModlueURL varchar(200) not null )ENGINE=InnoDB DEFAULT CHARSET=gbk;create table function(FunctionID int auto_increment primary key,FunctionName varchar(50) unique,Descr
12、iption varchar(200) not null )ENGINE=InnoDB DEFAULT CHARSET=gbk; create table auth(AuthID int auto_increment primary key,ModuleID int not null,FunctionID int not null,CONSTRAINT auth_module_fk FOREIGN KEY (ModuleID) REFERENCES module (ModuleID),CONSTRAINT auth_function_fk FOREIGN KEY (FunctionID) RE
13、FERENCES function (FunctionID)ENGINE=InnoDB DEFAULT CHARSET=gbk;create table roleauth(ID int auto_increment primary key,AuthID int not null,RoleID int not null,CONSTRAINT roleauth_auth_fk FOREIGN KEY (AuthID) REFERENCES auth (AuthID), CONSTRAINTroleauth_role_fk FOREIGN KEY (RoleID) REFERENCES role (
14、RoleID) )ENGINE=InnoDB DEFAULTCHARSET=gbk;4.初始化數(shù)據(jù)insert into role values(1,系統(tǒng)管理員,管理系統(tǒng)全部資源);insert into staff values(1,admin,21232F297A57A5A743894A0E4A801FC3); - admin:admin insert into module values(1,用戶管理,),(2,角色管理,),(3,模塊管理,),(4,功能管理,), (5,用戶角色管理,), (6,模塊功能管理,), (7,角色權(quán)限管理,); insert into function v
15、alues (1,save, (2,create, (3,list, (4,delete,(5,update, (6,search, (7,staffrole,(8,createstaffrole, (9,removestaffrole, (10,rolestaff, (11,roleauth,(12,createroleauth,(13,removeroleauth,(14,createauth,(15,removeauth,(16,createrolestaff,(17,removerolestaff,insert into auth values(1,1,1) ,(2,1,3),(3,1
16、,4),(4,1,5),(5,1,6),(6,2,1) ,(7,2,3),(8,2,4),(9,2,5),(10,2,6),(11,3,1) ,(12,3,3),(13,3,4),(14,3,5),(15,3,6),(16,4,1) ,(17,4,3),(18,4,4),(19,4,5),(20,4,6),(21,5,6),(22,5,7),(23,5,8),(24,5,9),(25,5,10),(26,5,16),(27,5,17),(28,6,3),(29,6,14),(30,6,15), (31,7,11),(32,7,12),(33,7,13);insert into roleauth values(1,1,1) ,(2,2,1),(3,3,1),(4,4,1),(5,5,1),(6,6,1) ,(7,7,1),(8,8,1),(9,9,1),(10,10,1),(11,11,1),(12,12,1),(13,13,1),(14,14,1),(15,15,1),(16,16,1),(17,17,1),(18,18,1),(19,19,1),(20,20,1),(21,21,1),(22,22,1)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣東大灣區(qū)一模數(shù)學(xué)試卷
- 高考為什么沒有數(shù)學(xué)試卷
- 高三高一數(shù)學(xué)試卷
- 鄂州高考數(shù)學(xué)試卷
- 肝病的識(shí)別和治療
- 2025年04月四川樂山市人民醫(yī)院臨床醫(yī)技類招聘60人筆試歷年專業(yè)考點(diǎn)(難、易錯(cuò)點(diǎn))附帶答案詳解
- 馬云新人培訓(xùn)課件
- 2024年11月浙江浙商銀行總行授信評(píng)審部社會(huì)招考(1117)筆試歷年參考題庫(kù)附帶答案詳解
- 2024年重慶大學(xué)物理學(xué)院招聘筆試真題
- 2025至2030不銹鋼日用品行業(yè)發(fā)展趨勢(shì)分析與未來(lái)投資戰(zhàn)略咨詢研究報(bào)告
- 2025至2030中國(guó)電動(dòng)踏板車行業(yè)項(xiàng)目調(diào)研及市場(chǎng)前景預(yù)測(cè)評(píng)估報(bào)告
- 中國(guó)公安信息化市場(chǎng)前景預(yù)測(cè)及未來(lái)發(fā)展趨勢(shì)報(bào)告
- 專精特新企業(yè)課件
- 2025至2030中國(guó)耐腐蝕高溫合金行業(yè)發(fā)展趨勢(shì)分析與未來(lái)投資戰(zhàn)略咨詢研究報(bào)告
- 四川省南充市四校聯(lián)考2025年英語(yǔ)八下期末質(zhì)量檢測(cè)試題含答案
- 2025年中國(guó)全棉靛藍(lán)色織布市場(chǎng)調(diào)查研究報(bào)告
- 人文關(guān)懷病區(qū)管理制度
- 中華詩(shī)詞大賽1-3年級(jí)題庫(kù)(含答案)
- 中國(guó)軍魂課件
- 油田調(diào)度匯報(bào)管理制度
- 湖南長(zhǎng)沙市長(zhǎng)郡教育集團(tuán)2025年七年級(jí)英語(yǔ)第二學(xué)期期中聯(lián)考試題含答案
評(píng)論
0/150
提交評(píng)論