




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
網(wǎng)站開發(fā)架構企業(yè)級的大型Web應用系統(tǒng)都要涉及到數(shù)據(jù)庫的訪問。最初是將所有訪問數(shù)據(jù)庫的功能都分別放在各個頁面類中完成,這對于小型系統(tǒng)比較適合。但應用規(guī)模變大時,這種結構會導致系統(tǒng)的可維護性、代碼的靈活性和重用性出現(xiàn)嚴重問題。所以出現(xiàn)了N層應用程序架構。典型的是三層架構,即表示層、業(yè)務邏輯層、數(shù)據(jù)訪問層。一、B/S架構設計理念與C/S相比,其優(yōu)點如下:簡化客戶端,方便軟件的安裝和部署,不需要在客戶端安裝軟件,節(jié)省空間,降低使用難度。便于開發(fā)和維護;Web瀏覽器基于簡單的HTTP協(xié)議;可以建立在任意一個可靠的服務器軟件平臺上。通常使用三層架構。留言簿實例1、顯示留言功能2、發(fā)表留言功能3、使用一個Access數(shù)據(jù)庫,包含兩張表:注冊用戶表RegUser和存儲留言的信息表Lword。單層結構的網(wǎng)站開發(fā)單層比較簡單,所有代碼都直接寫在網(wǎng)頁的類文件中,這里只實現(xiàn)查看留言和發(fā)表留言兩個功能設計兩個網(wǎng)頁即可。并編寫與之配套的類。單層開發(fā)架構設計分析源代碼,可以看出,兩個網(wǎng)頁都調(diào)用了數(shù)據(jù)庫操作類OleDbConnection、OleDbCommand和OleDbAdapter。調(diào)用關系如下:倆個網(wǎng)頁類都與數(shù)據(jù)庫操作類直接聯(lián)系,違背了“迪米特法則”,即讓一個類盡量少地與其他的類發(fā)生聯(lián)系,當數(shù)據(jù)庫操作類發(fā)生變化時,兩個網(wǎng)頁類要有連鎖式相應變化,會增加軟件的維護成本。解決方案:在頁面類和數(shù)據(jù)庫操作類之間引入一個“中介者”類。它其實就是門面模式中的門面。令所有類都與中介者通信,當Class1發(fā)生改變時,只要修改中介者類即可,降低軟件維護難度。DBTask類應包含的功能顯示留言的類中,把訪問數(shù)據(jù)庫的操作代碼提取出來,封裝成一個函數(shù)ListWord(),其返回結果是DataSet對象;發(fā)送留言的類中,有建立連接、獲取已注冊用戶信息、注冊新用戶、發(fā)送新留言四個功能。都需要直接調(diào)用數(shù)據(jù)庫操作類。因此將四個功能封裝為函數(shù),供頁面調(diào)用。封裝后的DBTask類結構圖二層設計架構的實現(xiàn)通過DBTask類,可以使頁面類代碼不包含任何直接訪問數(shù)據(jù)庫操作類的代碼,相關代碼都被封裝起來,頁面代碼只需調(diào)用DBTask類提供的函數(shù)來實現(xiàn)相關功能。這樣就分離了頁面類和數(shù)據(jù)庫操作類,實現(xiàn)了二層設計架構。三層設計架構在二層結構中,實現(xiàn)的頁面與數(shù)據(jù)操作的分離。但是頁面類中仍包含復雜的描述業(yè)務規(guī)則的代碼,把它們分離出來,形成單獨的一層,從而構成三層架構。如頁面類PostMessage.asp.cs中,保留有與用戶界面(通常處理用戶輸入、激發(fā)事件等)不直接相關的業(yè)務規(guī)則描述代碼,如判斷用戶名是否正確、驗證密碼是否正確、用戶名不存在則先注冊一個新賬戶等代碼,這些即為業(yè)務規(guī)則描述代碼。將這些代碼放入一個類中,供統(tǒng)一調(diào)用即可。三層設計架構頁面代碼只能直接訪問規(guī)則描述類InterService,而InterService類中的代碼可直接訪問DBTask類。不能在InterService類中直接出現(xiàn)數(shù)據(jù)庫訪問代碼。InterService類中可以直接調(diào)用DBTask類同名方法。理解三層設計架構一般可分為三層表示層業(yè)務邏輯層數(shù)據(jù)訪問層三層架構的優(yōu)點是每一層都可單獨修改,易擴展、易維護、易重用。三層架構的本質(zhì)是用計算機程序語言描述不同的任務邏輯,每一層實現(xiàn)方面的邏輯功能,不能僅以代碼所處的位置來判斷層次結構。所以請判斷下列說法在一個A
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度廠房裝修施工安全責任與綠色施工監(jiān)督協(xié)議
- 二零二五年度南京市公司勞務派遣工社會保險繳納協(xié)議
- 二零二五年度智慧城市建設資金支付委托合同
- 2025年度車輛抵押貸款合同協(xié)議書
- 2025年度高科技研發(fā)中心勞動合同解除合同書
- 二零二五合同標的調(diào)整:丙方加入乙方健康養(yǎng)老產(chǎn)業(yè)項目合作合同
- 2025年度苗圃土地承包經(jīng)營權轉(zhuǎn)讓合同
- 二零二五年度個人委托貸款合同(含金融科技與智能投顧服務)
- 2025年度電子商務平臺用戶數(shù)據(jù)保密協(xié)議
- 2024年青浦實驗幼兒園預算
- 數(shù)學五下《你知道嗎阿基米德巧辨皇冠真假》課件西南師大版-五年級數(shù)學課件
- 自檢記錄表鋼筋
- 胃痛患者的護理
- 項目測量員安全管理職責考核表
- 特種設備安全風險分級管控與隱患排查治理指導手冊
- 第三篇 昆蟲內(nèi)部解剖及生理
- 2023年《植物保護》專業(yè)考試題庫
- 工程建設法規(guī)(全套課件405P)
- 遼寧輕工職業(yè)學院2018年單獨招生考試試卷(語文 數(shù)學 英語)
- Python數(shù)據(jù)分析與挖掘?qū)崙?zhàn)PPT完整全套教學課件
- 2022年山東省煙草專賣局系統(tǒng)招聘考試試題真題及答案
評論
0/150
提交評論