簡析網(wǎng)絡應用系統(tǒng)通用框架的研究與設計_第1頁
簡析網(wǎng)絡應用系統(tǒng)通用框架的研究與設計_第2頁
簡析網(wǎng)絡應用系統(tǒng)通用框架的研究與設計_第3頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、簡析網(wǎng)絡應用系統(tǒng)通用框架的研究與設計         11-01-06 15:40:00     作者:呂海華 張欣    編輯:studa090420論文關鍵詞:通用框架;網(wǎng)絡應用系統(tǒng);Struts;MVC 論文摘要:針對目前比較流行的網(wǎng)絡管理系統(tǒng),分析其具有的共性,同時利用Java和Struts技術開發(fā)一個通用的網(wǎng)絡管理系統(tǒng)框架通過此框架可以提高系統(tǒng)開發(fā)的效率,縮短系統(tǒng)開發(fā)周期     結合當

2、前比較流行的網(wǎng)絡開發(fā)技術Java和Struts,針對信息管理系統(tǒng)的共性,開發(fā)了適用于多數(shù)信息管理系統(tǒng)的通用框架結構,使用此結構進行系統(tǒng)地開發(fā)可以提高系統(tǒng)開發(fā)的效率,降低開發(fā)的成本,有利于系統(tǒng)的維護. 1信息管理系統(tǒng)的共性     信息管理系統(tǒng)主要是針對數(shù)據(jù)進行處理,盡管每個行業(yè)對于處理的信息有所不同,例如人員信息、產(chǎn)品信息、車輛信息等.但是對于這些信息管理系統(tǒng)來說,存在著很多的共性.例如,它們都使用關系型數(shù)據(jù)庫、XML或其他格式的數(shù)據(jù)文件來存儲這些信息;對這些信息都需要顯示、查詢、添加、修改、刪除等操作.如果能夠?qū)⑦@些操作封裝到一個共同的模塊中,無疑將會

3、加快開發(fā)的進度,降低程序產(chǎn)生bug的數(shù)量,程序員就可以把大部分精力投放到具體業(yè)務的處理上面.     除了上面一些共同點外,一個成功的軟件產(chǎn)品,還需要良好的操作界面、統(tǒng)一的界面風格,或者可定做的各種屬性.而這些也都完全可以封裝到一個模塊中,定義成屬性文件.根據(jù)客戶的不同喜好,只需要修改屬性文件,就產(chǎn)生了外觀完全不同的另一套軟件產(chǎn)品.     利用MVC良好的設計模式,使用Struts技術,完全可以對上述的基本操作功能和操作界面進行完全的封裝,開發(fā)出適用于信息管理系統(tǒng)的通用框架. 2模型一視圖一控制器  &

4、#160;  模型一視圖一控制器模式簡稱MVC模式,即ModeViewControl,是交互式應用程序廣泛使用的一種體系結構.它可有效地存儲和展示數(shù)據(jù)的對象中區(qū)分功能模塊以降低它們之間的藕合度,這種架構模式能將傳統(tǒng)的輸入、處理和輸出的模式轉化為圖形顯示用戶交互模式.MVC體系結構具有3個層面,即模型(Model )、視圖(View)和控制(Controller) .     MVC架構模式是針對交互式系統(tǒng),基于“分而治之”的思想,將系統(tǒng)分成不同的邏輯部件.換言之,這是對系統(tǒng)不同責任的劃分過程.這種架構模式除了對系統(tǒng)

5、本身帶來的優(yōu)點以外,對于項目管理也有很大的好處.它可以將開發(fā)團隊按照MVC分成小組,擅長界面設計的人員開發(fā)視圖組件,精通業(yè)務的開發(fā)模型,對于整個系統(tǒng)都比較熟悉的可進行控制器設計. 3   Struts技術     Struts是一種基于MVC經(jīng)典設計模式的開放源代碼的應用框架,也是目前Web開發(fā)中比較成熟的一種框架.通過把Servlet , JSP, JavaBean、自定義標簽和信息資源整合到一個統(tǒng)一的框架中,為Web開發(fā)提供了具有高可配置性的MVC開發(fā)模式.   

6、0; Struts體系結構實現(xiàn)了MVC設計模式的概念,它將Model , View和Controlle:分別映射到Web應用中的組件.Model由代表系統(tǒng)狀態(tài)和業(yè)務邏輯的Action來構建.在Struts中,系統(tǒng)的狀態(tài)主要由ActiomFormBean體現(xiàn),對于業(yè)務邏輯通常由JavaBean或EJB組件來實現(xiàn).View是由JSP和Struts提供的自定義標簽來實現(xiàn),Struts自身包含了一組可擴展的自定義標簽庫( Taglib),可以簡化創(chuàng)建用戶界面的過程.Controlle:負責控制流程,由Action Servlet和Action 

7、;Mapping來完成.Action Servlet類是Struts框架中的核心組件,主要負責接收HTTP請求信息,并轉發(fā)給相應的Action對象.Action類負責調(diào)用模型的方法、更新模型的狀態(tài),并幫助控制應用程序的流程.當Action Servlet接收HTTP請求信息時,把用戶請求轉發(fā)給哪個Action對象,這就需要一些描述用戶請求的路徑和Action映射關系的配置信息.在Struts中,這些配置映射信息都存儲在Struts-config. xml文件中,在該配置文件中,每一個Action的映射信息都通過一個(action )元素來配置.這些配置信

8、息在系統(tǒng)啟動時會被讀人內(nèi)存,供Struts在運行期間使用.在內(nèi)存中,每一個(action)元素都對應一個Action Mapping類的實例. 4通用框架設計     首先從整體上對通用框架進行設計,圖1是所要設計通用框架的結構圖.該框架在設計時,考慮了當前數(shù)據(jù)庫盡管主要是以關系型數(shù)據(jù)庫為主,但也加人了對XML等文件存儲格式的數(shù)據(jù)處理.下面對框架中的主要部分進行說明. 4.1  DAO/DPO     在該框架中采用了數(shù)據(jù)訪問對象(Data Access Objec

9、t,簡稱DAO)設計模式.DAO模式提供了訪問關系型數(shù)據(jù)庫系統(tǒng)所需的所有操作接口,其中包括了創(chuàng)建數(shù)據(jù)庫,定義表、字段和索引,建立表間的關系,更新和查詢數(shù)據(jù)庫和執(zhí)行存儲過程等.     DAO模式將底層數(shù)據(jù)訪問操作與高層業(yè)務邏輯分離開,對上層提供面向?qū)ο蟮臄?shù)據(jù)訪問接口另外,該通用框架還提供了數(shù)據(jù)解析對象(DPO)設計模式. 同DAO類似,它主要是提供了對XML或其他文件格式的數(shù)據(jù)進行操作的所有接口.      11-01-06 15:40:00     作者:呂海華

10、張欣    編輯:studa090420   同時在該框架中,還對應2種設計模式提供了2個類,即Data Access Object和Data Parse Object.對于Data Access Object,還提供了數(shù)據(jù)庫連接池,通過配置文件,可以設置是否使用連接池,同時還可以使用應用服務器提供的連接池.由于當前數(shù)據(jù)庫種類繁多,通過配置文件可以設置使用不同的數(shù)據(jù)庫,例如Oracle ,SQL Server , My

11、0;SQL等.     通過對數(shù)據(jù)操作的封裝,使通用框架具有了通用性.它把具體的業(yè)務對象和數(shù)據(jù)庫操作完全分離,不僅可以使程序員更專注于具體業(yè)務的處理,而且程序也易于維護和調(diào)試.     由于目前大多數(shù)信息管理系統(tǒng)都采用關系數(shù)據(jù)庫,因此也有很多的DAO組件,例如Hibernate, Cas-for . Free Form等,在通用框架中也可以采用這些成熟的DAO組件. 4.2業(yè)務對象(BO)     業(yè)務對象,即Business 

12、;Object,是對真實世界實體的軟件抽象,它包含數(shù)據(jù)和行為.它們對應著數(shù)據(jù)庫中的一條或多條記錄,盡管不同業(yè)務之間的差距非常大,但是它們都共享一些公共的屬性,例如版本號、描述、操作者、操作時間、表名、列數(shù)等.因此,為了避免每個業(yè)務對象都重復定義這些公共屬性,需定義一個抽象父類來存放這些公共屬性,如果需要還可以在這個類中定義公共的業(yè)務邏輯,如分頁等.     該框架定義了一個抽象父類,即BaseBusines-sObject.它包含了業(yè)務對象所用到的公共屬性,所有的業(yè)務對象都必須繼承該父類.由于幾乎每個業(yè)務對象都需要分頁顯示,因此,在父類中還添加了分頁顯示

13、的功能.在具體的項目中如果還有其他的公共屬性,程序員還可以對該類進行擴充. 4.3界面封裝設計     BiS結構的操作界面基本是Html/JSP/Servlet ,其中JSP是最常用且是最多的.對于JSP的各種標簽,如按鈕、文本框、下拉框等,為了保持它們的界面風格統(tǒng)一,可以采用自定義標簽,定義屬性文件,也可以采用Struts提供的一些標簽.     在該框架中,除了對界面風格提供了屬性配置文件外,為了最大限度地減少JSP頁面中的Java代碼,還對JSP的操作進行了封裝.現(xiàn)以員工基本信息為例進行說明.建立

14、一個員工信息頁面一personlist. jsp,該網(wǎng)頁包含3個通用網(wǎng)頁,即common. jsp, list _ tool _ top. jsp和list _ data. jsp, common, jsp頁面中導人了常用類、Struts標簽、自定義標簽、頁面CSS樣式文件、Javascript函數(shù)文件和共同變量等;list _ tool _ top. jsp中包含了查詢、刪除、保存、修改、排序等通用操作的邏輯處理,界面操作按鈕、分頁和操作類型的標簽;,listdata.jsp文件主要用于數(shù)據(jù)顯示的功能.     personlist. jsp除了包含上述3個文件外,還需要定義本功能模塊action的target.因此,personlist. jsp作為一個完整功能模塊的數(shù)據(jù)操作界面,需要編寫的代碼行數(shù)僅有10行左右.     另外,通過在Javascript函數(shù)對list-too

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論