資源描述:
《基于struts+spring的web應(yīng)用設(shè)計與實現(xiàn)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、從本學(xué)科出發(fā),應(yīng)著重選對國民經(jīng)濟(jì)具有一定實用價值和理論意義的課題。課題具有先進(jìn)性,便于研究生提出新見解,特別是博士生必須有創(chuàng)新性的成果基于Struts+Spring的Web應(yīng)用設(shè)計與實現(xiàn)摘要集成Struts、Spring框架技術(shù)構(gòu)建基于J2EE的Web應(yīng)用可以提高J2EE項目的可重用性。本文介紹了兩種流行的開源框架技術(shù)Struts和Spring的原理,并將這兩種框架技術(shù)整合起來應(yīng)用到實際的Web項目開發(fā)中去,從而提高項目代碼的復(fù)用性及項目開發(fā)的效率。關(guān)鍵詞J2EE;Struts;Spring基于J2EE的Web應(yīng)用系統(tǒng)以其層次性、平臺無關(guān)性逐漸被大多數(shù)的公司所
2、認(rèn)同,已經(jīng)成為電子商務(wù)主要的解決方案。傳統(tǒng)的JSP/Servlet開發(fā)模式優(yōu)勢在于直接、簡單,對于小型應(yīng)用可以很方便、快速地進(jìn)行開發(fā)。但是這種不加控制的開發(fā)模式往往帶來顯示、業(yè)務(wù)和數(shù)據(jù)的高耦合性,軟件難以重用。基于J2EE的框架技術(shù)是解決上述問題的重要技術(shù),能夠有效地支持大型J2EEWeb應(yīng)用項目的開發(fā)。本文通過集成Struts和Spring基于J2EE的框架技術(shù)提出了一種構(gòu)建J2EE應(yīng)用的框架。TheJakartaStruts項目是由Apache發(fā)起的開源項目,是基于MVC分離思想的杰出產(chǎn)品。Struts的Controller是通過Actionservlet
3、對象實現(xiàn)的,這個控制器獲得View課題份量和難易程度要恰當(dāng),博士生能在二年內(nèi)作出結(jié)果,碩士生能在一年內(nèi)作出結(jié)果,特別是對實驗條件等要有恰當(dāng)?shù)墓烙?。從本學(xué)科出發(fā),應(yīng)著重選對國民經(jīng)濟(jì)具有一定實用價值和理論意義的課題。課題具有先進(jìn)性,便于研究生提出新見解,特別是博士生必須有創(chuàng)新性的成果(JSP)的請求后根據(jù)ActionMapping對象調(diào)度對應(yīng)的Model(Action對象)處理業(yè)務(wù)邏輯,并將獲得的處理結(jié)果返回給View(JSP)來響應(yīng)。同時通過ActionForm對象封裝數(shù)據(jù)在Model和View之間交互使用。Struts還通過自定義的標(biāo)簽庫豐富了View層的JS
4、P技術(shù),方便了頁面設(shè)計。下面我們就分別從視圖、控制、模型和Struts的配置文件來介紹Struts的體系結(jié)構(gòu)。(1)視圖。是一組JSP文件,Struts自身包含了一組可擴(kuò)展的自定義標(biāo)簽庫,可以簡化創(chuàng)建用戶界面的過程。這些JSP文件中沒有業(yè)務(wù)邏輯,也沒有信息模型。(2)模型。模型主要是表示一個系統(tǒng)的狀態(tài)和業(yè)務(wù)邏輯。在Struts中,系統(tǒng)的狀態(tài)主要由ActiomFormBean體現(xiàn),對于業(yè)務(wù)邏輯通常由JavaBean或EJB組件來實現(xiàn)。(3)控制器??刂破髦饕葾ctionServlet類和Action類來實現(xiàn),ActionServlet類是Struts框架中的核
5、心組件,主要負(fù)責(zé)接收HTTP請求信息。根據(jù)配置文件的配置信息,把請求轉(zhuǎn)發(fā)合適的Action對象。Action類負(fù)責(zé)調(diào)用模型的方法,更新模型的狀態(tài),并幫助控制應(yīng)用程序的流程。(4)配置文件。當(dāng)ActionServlet接收HTTP請求信息時,如何決定把用戶請求轉(zhuǎn)發(fā)給哪個Action對象呢?這就需要一些描述用戶請求路徑和Action映射關(guān)系的配置信息。在Struts中,這些配置映射信息都存儲在特定的XML文件中,在該配置文件中,每一個Action的映射信息都通過一個(action)元素來配置。這些配置信息在系統(tǒng)啟動時會被讀入內(nèi)存,供Struts在運行期間使用,在內(nèi)
6、存中,每一個(action)元素都對應(yīng)一個ActionMapping類的實例。Spring的哲學(xué)是在不影響課題份量和難易程度要恰當(dāng),博士生能在二年內(nèi)作出結(jié)果,碩士生能在一年內(nèi)作出結(jié)果,特別是對實驗條件等要有恰當(dāng)?shù)墓烙?。從本學(xué)科出發(fā),應(yīng)著重選對國民經(jīng)濟(jì)具有一定實用價值和理論意義的課題。課題具有先進(jìn)性,便于研究生提出新見解,特別是博士生必須有創(chuàng)新性的成果Java對象設(shè)計的情況下將Java對象加入到框架中。Spring解決了許多J2EE開發(fā)中的常見問題,它不依賴于任何的組件,是一種輕量級的容器,其核心是Bean工廠,用以構(gòu)造我們所需要的M(Model)。Spring
7、框架是一個分層的應(yīng)用程序開發(fā)框架,而不是某一層,如Struts或Hibernate都屬于單獨某一層的框架。Spring致力于在整個應(yīng)用程序?qū)用婕軜?gòu)程序,使程序的各個層面協(xié)調(diào)一致,從而發(fā)揮最大的效能。Spring能整合現(xiàn)有的優(yōu)秀單層框架,把它們組成連貫統(tǒng)一的框架。Spring框架的模塊化完成的非常好。大體上,存在如圖1所示的幾個模塊。圖1Spring模塊圖其中:Spring核心模塊:Spring架構(gòu)中最為基礎(chǔ)、重要的模塊。它提供了IoC容器,即依賴注入。其中,BeanFactory是最為重要的概念,對理解IoC和ApplicationContext起到了重要作用
8、。SpringAOP模塊:實現(xiàn)了AOP