專利名稱:一種基于Struts框架的信息管理系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及信息系統(tǒng)領(lǐng)域,特別涉及一種基于Mruts框架的信息管理系統(tǒng)。
背景技術(shù):
隨著技術(shù)的發(fā)展,信息系統(tǒng)已經(jīng)廣泛的被應(yīng)用到企業(yè)的運(yùn)營當(dāng)中,面對飛速發(fā)展 的軟件行業(yè)以及日益繁多的軟件開發(fā)技術(shù),人們深刻地認(rèn)識到,選擇良好的開發(fā)框架對保 證信息系統(tǒng)的成功運(yùn)行至關(guān)重要。一個成熟的框架能夠幫助開發(fā)人員縮短開發(fā)時間、減少 重復(fù)開發(fā)工作量、降低開發(fā)成本,增強(qiáng)程序的可維護(hù)性和可擴(kuò)展性。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種基于Mruts框架的信息管理系統(tǒng),通過模塊化的架構(gòu), 將用戶請求的編譯和轉(zhuǎn)發(fā);業(yè)務(wù)邏輯處理和數(shù)據(jù)顯示分別建立成為三個獨立的模塊,使系 統(tǒng)的脈絡(luò)更加清晰,提高系統(tǒng)的可維護(hù)性、減少重復(fù)開發(fā)工作量。一種基于Mruts框架的信息管理系統(tǒng),包括Web客戶端,包含web瀏覽器,發(fā)送http請求;控制層,抓取用戶填寫的表單數(shù)據(jù)生成不同的請求,調(diào)用模型層中的不同業(yè)務(wù)邏 輯方法;模型層,封裝企業(yè)數(shù)據(jù)和業(yè)務(wù)邏輯處理方法;視圖層,所述視圖層是用戶看到并與之交互的界面,通過Java程序段和Java標(biāo)記 訪問控制層,封裝產(chǎn)生動態(tài)網(wǎng)頁的處理邏輯,將處理結(jié)果發(fā)送到Web客戶端。所述控制層包括Web. xml,通過其中的配置,加載Mruts-config. xml,使所述控制層接受到了用戶 的一個請求之后,定義了一個請求應(yīng)向何處轉(zhuǎn)發(fā);Mruts-config.xml,配置全局轉(zhuǎn)發(fā),使控制層確定是否調(diào)用模型層中業(yè)務(wù)邏輯方 法,調(diào)用哪一種業(yè)務(wù)邏輯方法。Action類,用戶請求和業(yè)務(wù)邏輯之間連接器,充當(dāng)業(yè)務(wù)代理;Struts Action Classes,作為客戶請求動作和Action類之間的一個適配器,將請 求與Action類分開,并形成多個點對點的映射;Struts ActionMapping,存儲并映射請求到特定Action類的相關(guān)信息;Struts ActionForm Bean,為模型層的Actionbean類的操作提供與客戶表單相映 射的數(shù)據(jù),并且調(diào)用Actionbean類。所述控制器在接受到Web客戶端請求動作之后,通過ffeb. xml加載 Struts-config. xml 并全局轉(zhuǎn)發(fā),并同時配置 Struts Action Classes, Struts ActionMapping, Struts ActionForm Bean。所述顯示層包括以下幾個組件Actionbean類,操作業(yè)務(wù)邏輯的方法,通過JDBC完成必要的商業(yè)邏輯和顯示邏輯,返回 ActionForm Bean ;JDBC數(shù)據(jù)接口,讀取數(shù)據(jù)庫的接口。所述業(yè)務(wù)邏輯方法通過不同的組件完成不同的業(yè)務(wù)邏輯需求,所述業(yè)務(wù)邏輯需求 按照功能劃分為,用戶管理,密碼管理,企業(yè)數(shù)據(jù)維護(hù),企業(yè)數(shù)據(jù)查詢。所述模型層中還包括數(shù)據(jù)庫,所述企業(yè)數(shù)據(jù)均存儲在數(shù)據(jù)庫當(dāng)中,所述數(shù)據(jù)庫包 括用戶表和信息表。采用本發(fā)明所述的一種基于Mruts框架的信息管理系統(tǒng),通過web客戶端發(fā)送 http請求,控制層抓取用戶填寫的表單數(shù)據(jù)生成不同的請求,調(diào)用模型層中的不同業(yè)務(wù)邏 輯方法,模型層封裝企業(yè)數(shù)據(jù)和業(yè)務(wù)邏輯處理方法,視圖層訪問控制層,封裝產(chǎn)生動態(tài)網(wǎng)頁 的處理邏輯,將處理結(jié)果發(fā)送到Web客戶端,采用了本發(fā)明所述的技術(shù)方案可以提高系統(tǒng) 的可維護(hù)性、減少重復(fù)開發(fā)工作量。
圖1是本發(fā)明所述系統(tǒng)架構(gòu)的原理框圖。
具體實施例方式下面結(jié)合附圖和實施例進(jìn)一步說明本發(fā)明的技術(shù)方案,本實施例以一個員工管理 系統(tǒng)進(jìn)行說明。如圖1顯示了本發(fā)明提供的一種基于Mruts框架的信息系統(tǒng)的原理框圖100,包 括Web客戶端110,控制層120,模型層130,顯示層140。Web客戶端,包含web瀏覽器,用戶通過web瀏覽器瀏覽顯示層140提供的界面并 提交表單,web瀏覽器同時發(fā)出http請求??刂茖?20,包括Web. xml 配置文件,Struts-conf ig. xml,action 類,ActionForm Bean, ActionMapping牛。所述flfeb. xml,在服務(wù)器啟動之后,Struts-conf ig. xml,使所述控制層接受到了用 戶的一個請求之后,定義了 一個請求應(yīng)向何處轉(zhuǎn)發(fā)。所述Struts-config. xml,默認(rèn)配置目錄為 \WEB-INF\struts_config. xml,通過 Struts-config. xml來配置全局轉(zhuǎn)發(fā)以及ActionMapping和ActionForm Bean這兩個配置 文件。所述全局轉(zhuǎn)發(fā)用來在JSP頁之間創(chuàng)建邏輯名稱映射,轉(zhuǎn)發(fā)都可以通過對調(diào)用操作 映射的實例來獲得,例如actionMapping Instace. findForward( “IogicalName");所述配置 ActionForm Bean 組件,即利用 Struts-config. xml 使用 ActionForm 來 保存請求的參數(shù),這些bean的屬性名稱與HTTP請求參數(shù)中的名稱相對應(yīng),控制器將請求參 數(shù)傳遞到ActionR)rm bean的實例,然后將這個實例傳送到Action類。所述配置ActionMapping組件,即ActionMapping對象幫助進(jìn)行框架內(nèi)部的流程 控制,它們可將請求URI映射到Action類,并且將Action類與ActionR)rm bean相關(guān)聯(lián)。 Mruts-config.xml在內(nèi)部使用這些映射,并將控制轉(zhuǎn)移到特定Action類的實例。所有 Action類使用perform()方法實現(xiàn)特定應(yīng)用程序代碼,返回一個ActionR)rWard對象,其中
4包括響應(yīng)轉(zhuǎn)發(fā)的目標(biāo)資源名稱。例如<action_mappings>〈action path = “/createBook,,type = “ BookAc t i on "name =‘‘bookForm,,,scope ="request,,input = "/CreateBook. jsp,,>〈/action〉<forward name = “failure"path = "/CreateBook. jsp,,/><forward name = "cancel"path = "/index. jsp,,/></action-mappings>對于控制層120如何控制、處理客戶請求,讓我們通過對struts的四個核心組件 介紹來具體說明。這四個組件就是Jtruts-config. xml、Action類,Action Mapping以及 ActionFrom Bean。Struts-config. xml 繼7 自 Javax. servlet. http. HttpServlet 類,其在 Struts 體 系結(jié)構(gòu)中扮演的角色失控制器,控制器Mruts-config. xml主要負(fù)責(zé)將HTTP的客戶請求信 息組裝后,根據(jù)配置文件的指定描述,轉(zhuǎn)發(fā)到適當(dāng)?shù)奶幚砥鳌ctoinServlet 必須在 Web Application 配置文件(web. xml)中描述。Action類,就像客戶請求動作和業(yè)務(wù)邏輯處理之間的一個適配器(Adaptor), 其功能就是將請求與業(yè)務(wù)邏輯分開。這樣的分離,使得客戶請求和Action類之間可 以有多個點對點的映射。而且Action類通常還提供了其它的輔助功能,比如認(rèn)證 (authorization) > H^ (logging)禾0 :!^ (validation)。Struts ActionMapping,即將特定請求映射到特定Action的相關(guān)信息存儲在 ActionMapping 中,ActionServelt 將 ActionMapping 傳送至Ij Action 類的 perform ()方 法,Action將使用ActionMapping的findForwardO方法,此方法返回一個指定名稱的 ActionR)rward,這樣Action就完成了本地轉(zhuǎn)發(fā)。若沒有找到具體的ActionR)rward,就返 回一個null。Struts ActionForm Bean,即一個應(yīng)用系統(tǒng)的消息轉(zhuǎn)移(或者說狀態(tài)轉(zhuǎn)移)的非 持久性數(shù)據(jù)存儲,是由Actior^orm Bean的負(fù)責(zé)保持的。ActionForm的主要功能就是為Action的操作提供與客戶表單相映射的數(shù)據(jù)(如 果在客戶指定的情況下,還包括對數(shù)據(jù)進(jìn)行校驗)。Action負(fù)責(zé)對系統(tǒng)數(shù)據(jù)狀態(tài)的保持,而 Action則負(fù)責(zé)根據(jù)業(yè)務(wù)邏輯的需要,對數(shù)據(jù)狀態(tài)進(jìn)行修改,在改變系統(tǒng)狀態(tài)后,ActionForm 則自動的回寫新的數(shù)據(jù)狀態(tài)并保持。模型層130,即借助JDBC數(shù)據(jù)庫接口和Actionbean類,實現(xiàn)系統(tǒng)用戶登陸,注冊用 戶,找回密碼,增加新信息,模糊搜索信息,刪除信息,更新信息,顯示信息,顯示具體信息等 功能。所述Actionbean類,即操作業(yè)務(wù)邏輯的方法,通過JDBC完成必要的商業(yè)邏輯和顯 示邏輯,返回 ActionForm Bean。所述JDBC接口,需要在Actionbean類調(diào)用時進(jìn)行初始化,需要配置的數(shù)據(jù)庫屬性 包括
權(quán)利要求
1.一種基于MrutS框架的信息管理系統(tǒng),其特征在于,包括 Web客戶端,包含web瀏覽器,發(fā)送http請求;控制層,抓取用戶填寫的表單數(shù)據(jù)生成不同的請求,調(diào)用模型層中的不同業(yè)務(wù)邏輯方法;模型層,封裝企業(yè)數(shù)據(jù)和業(yè)務(wù)邏輯處理方法;視圖層,所述視圖層是用戶看到并與之交互的界面,通過Java程序段和Java標(biāo)記訪問 控制層,封裝產(chǎn)生動態(tài)網(wǎng)頁的處理邏輯,將處理結(jié)果發(fā)送到Web客戶端。
2.如權(quán)利要求1所述的信息管理系統(tǒng),其特征在于,所述控制層包括Web. xml,通過其中的配置,使所述控制層接受到了用戶的一個請求之后,定義了一個 請求應(yīng)向何處轉(zhuǎn)發(fā);Struts-config. xml,使控制層確定是否調(diào)用模型層中業(yè)務(wù)邏輯方法,調(diào)用哪一種業(yè)務(wù) 邏輯方法;Action類,用戶請求和業(yè)務(wù)邏輯之間連接器,充當(dāng)業(yè)務(wù)代理;Struts Action Classes,作為客戶請求動作和Action類之間的一個適配器,將請求與 Action類分開,并形成多個點對點的映射;Struts ActionMapping,存儲并映射請求到特定Action類的相關(guān)信息; Struts ActionForm Bean,為模型層的Actionbean類的操作提供與客戶表單相映射的 數(shù)據(jù),并且調(diào)用Actionbean類。
3.如權(quán)利要求2所述的信息管理系統(tǒng),其特征在于,所述控制器在接受到Web客戶 端請求動作之后,通過W^eb. xml加載Mruts-config. xml并全局轉(zhuǎn)發(fā),并同時配置Mruts Action Classes, Struts ActionMapping, StrutsActionForm Bean。
4.如權(quán)利要求1和2所述的信息管理系統(tǒng),其特征在于,所述顯示層包括以下幾個組件Actionbean類組件,操作業(yè)務(wù)邏輯的方法,通過JDBC完成必要的商業(yè)邏輯和顯示邏 輯,返回值給Actioni^orm Bean組件;JDBC數(shù)據(jù)接口組件,讀取數(shù)據(jù)庫的接口。
5.如權(quán)利要求1和3所述的信息管理系統(tǒng),其特征在于,所述業(yè)務(wù)邏輯方法通過不同的 組件完成不同的業(yè)務(wù)邏輯需求,所述業(yè)務(wù)邏輯需求按照功能劃分為,用戶管理,密碼管理, 企業(yè)數(shù)據(jù)維護(hù),企業(yè)數(shù)據(jù)查詢。
6.如權(quán)利要求1和3所述的信息管理系統(tǒng),其特征在于,所述模型層中還包括數(shù)據(jù)庫, 所述企業(yè)數(shù)據(jù)均存儲在數(shù)據(jù)庫當(dāng)中,所述數(shù)據(jù)庫包括用戶表和信息表。
全文摘要
本發(fā)明揭示了一種基于Struts框架的信息管理系統(tǒng),通過web客戶端發(fā)送http請求,控制層抓取用戶填寫的表單數(shù)據(jù)生成不同的請求,調(diào)用模型層中的不同業(yè)務(wù)邏輯方法,模型層封裝企業(yè)數(shù)據(jù)和業(yè)務(wù)邏輯處理方法,視圖層訪問控制層,封裝產(chǎn)生動態(tài)網(wǎng)頁的處理邏輯,將處理結(jié)果發(fā)送到Web客戶端,采用了本發(fā)明所述的技術(shù)方案可以提高系統(tǒng)的可維護(hù)性、減少重復(fù)開發(fā)工作量。
文檔編號G06F9/44GK102117203SQ20091024771
公開日2011年7月6日 申請日期2009年12月30日 優(yōu)先權(quán)日2009年12月30日
發(fā)明者陸旭晨 申請人:上海杉達(dá)學(xué)院