文/王智杰,五礦礦業(yè)控股有限公司信息中心
隨著Internet技術(shù)的發(fā)展,基于MVC(Model-View-Controller)模型的Struts框架為WEB應(yīng)用帶來了良好的層次劃分。本系統(tǒng)的設(shè)計(jì)采用Struts框架技術(shù)開發(fā),實(shí)現(xiàn)了事故事件的統(tǒng)計(jì)分析和決策。開發(fā)中結(jié)合JSP的頁面顯示技術(shù),保證了代碼的安全,同時(shí)簡化了JSP頁面的編碼,使得對信息的管理更加及時(shí)、高效。
2.1.1 MVC簡介
MVC全名是Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫,是軟件開發(fā)過程中比較流行的設(shè)計(jì)思想。MVC模式可將系統(tǒng)模型與視圖分離,從而提高系統(tǒng)的擴(kuò)展性和可維護(hù)性。將其引入Web系統(tǒng)開發(fā)后,系統(tǒng)模式由傳統(tǒng)的JSP完成用戶請求和響應(yīng)改變?yōu)橛煽刂破鞑东@用戶請求,JavaBean完成模型操作,而JSP專門負(fù)責(zé)響應(yīng)用戶需求。
2.1.2 MVC工作步驟
1)用戶在表單中輸入,表單提交給Servlet,Servlet驗(yàn)證輸入,然后實(shí)例化JavaBean。
2)JavaBean 查詢數(shù)據(jù)庫,查詢結(jié)果暫存在JavaBean中。
3)Servlet跳轉(zhuǎn)到JSP,JSP使用JavaBean,得到他里面的查詢結(jié)果,并顯示出來。
2.2.1 Struts 框架基本原理
Struts體系結(jié)構(gòu)實(shí)現(xiàn)了MVC設(shè)計(jì)模式的概念,它將Model、View和Controller分別映射到Web應(yīng)用中的組件。Model由代表系統(tǒng)狀態(tài)和商業(yè)邏輯Action來構(gòu)建,View是由JSP和struts提供的自定義標(biāo)簽來實(shí)現(xiàn),Controller負(fù)責(zé)控制流程,由ActionServlet和ActionMapping來完成。
Struts框架可分為四個(gè)主要部分:模型(Model)、視圖(View)、控制器(Controller)和用來做XML文件解析的工具包。
2.2.2 創(chuàng)建Web應(yīng)用的配置文件
對于Struts應(yīng)用,它的配置文件web.xml應(yīng)該對ActionServlet類進(jìn)行配置。此外,還應(yīng)該聲明Web應(yīng)用所使用的Struts標(biāo)簽庫。
2.2.3 struts-config.xml配置文件
struts-config.xml配置文件是整個(gè)框架的主心骨。web.xml文件定義了一個(gè)請求到來應(yīng)向何處轉(zhuǎn)發(fā)后,后面的工作就全權(quán)由strutsconfig.xml管理控制。文件的配置包括全局轉(zhuǎn)發(fā)、ActionMapping類、Actionform bean 和JDBC數(shù)據(jù)源四個(gè)部分。
事故事件信息管理系統(tǒng)以事故事件調(diào)查、分析、記錄為主流程,以電子化的統(tǒng)計(jì)分析決策功能為特色,以信息資源共享為橋梁,實(shí)現(xiàn)了事故事件的錄入、查詢、分析統(tǒng)計(jì)等功能。
運(yùn)用Struts框架實(shí)現(xiàn)系統(tǒng),首先把應(yīng)用分解為模型、視圖和控制器來實(shí)現(xiàn),這樣就將業(yè)務(wù)邏輯和表現(xiàn)層分開。然后運(yùn)用struts-config.xml配置文件將三者組裝起來,協(xié)調(diào)它們完成相應(yīng)的功能。下面將以系統(tǒng)中單位管理為例按照MVC架構(gòu)來詳述實(shí)現(xiàn)過程。
3.2.1 創(chuàng)建視圖組件
在視圖中主要包括一個(gè)組件:新增單位頁面companyadd.jsp,是struts的輸入顯示頁面,保存在Web應(yīng)用根目錄下的accident文件夾中。
3.2.2 創(chuàng)建模型組件
模型組件文件CompanyaddAction.java是處理業(yè)務(wù)邏輯的JavaBean,封裝了對單位信息的操作。例如查找、刪除、編輯、修改部門信息、記錄日志等。
3.2.3 創(chuàng)建控制器組件
控制器組件作為整個(gè)Struts架構(gòu)的控制中心,包括了ActionServlet、Action Bean、ActionForm Bean、以及相關(guān)配置文件web.xml、strutsconfig.xml及資源包。ActionServlet類是框架自帶的,是整個(gè)Struts框架的控制樞紐,通常不需要擴(kuò)展。
1)聲明及定義CompanyaddForm.java
該Javabean用于收取用戶登錄頁面提交的表單數(shù)據(jù)。注意ActionFormBean中屬性名稱一定要對應(yīng)用戶表示層JSP頁面中的表單元素名稱及超鏈接參數(shù)名。
2)配置文件定義
web.xml主要實(shí)現(xiàn)了對ActionServlet進(jìn)行配置,同時(shí)還必須聲明Web表示層中所使用的struts標(biāo)簽庫。
Struts-config.xml配置表單驗(yàn)證類及特性的請求路徑到相應(yīng)的Action類的映射等。
實(shí)踐是檢驗(yàn)真理的唯一標(biāo)準(zhǔn),通過運(yùn)用Struts框架開發(fā)事故事件信息管理系統(tǒng),使我深刻感受到了其在開發(fā)過程中的便利。在Struts框架下開發(fā),條理清晰,在系統(tǒng)出現(xiàn)問題后,可在短時(shí)間內(nèi)找出問題所在,提高了開發(fā)速度,保證了系統(tǒng)的質(zhì)量。MVC它強(qiáng)制將模型—視圖—控制分開,這種強(qiáng)制性帶來的直接好處就是系統(tǒng)開發(fā)更趨于靈活,增強(qiáng)了系統(tǒng)的可重用性和易維護(hù)性。