国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設計 > 正文

基于Struts和Hibenate的發(fā)布系統(tǒng)研究

2019-11-18 15:18:47
字體:
來源:轉載
供稿:網友
摘 要 本文分析了傳統(tǒng)Web信息系統(tǒng)的缺點,具體闡述了MVC設計模式思想,剖析了當前被廣泛應用的開源設計框架:Struts和Hibernate的工作原理,基于以上分析提出將二者結合起來實現(xiàn)優(yōu)勢互補共同開發(fā)遙感信息發(fā)布系統(tǒng)的思路,最后結合了DAO和工廠設計模式實現(xiàn)了具有良好可擴展性、實用性和可維護性的遙感信息發(fā)布系統(tǒng)。

  要害詞 遙感數據分發(fā);MVC設計模式;Struts框架;Hibernate映射工具

  引言

  隨著Internet技術的飛速發(fā)展,Web信息系統(tǒng)被廣泛應用。遙感信息發(fā)布系統(tǒng),就是指基于Web的遙感數據信息發(fā)布系統(tǒng)。隨著時間的推移,傳統(tǒng)的Web信息系統(tǒng)暴露了很多問題,如頁面邏輯、業(yè)務邏輯和數據邏輯雜糅在一起,系統(tǒng)的耦合性高,修改、維護困難,擴展性差。為克服以上問題,新的開發(fā)方法也不斷被提出來,如軟件分層思想,MVC設計模式等等。

  本文就如何構建弱耦合性,可維護和可擴展的遙感信息發(fā)布系統(tǒng)等問題展開探討。根據當前Web技術的發(fā)展,提出了采用java環(huán)境下實現(xiàn)MVC設計模式的Struts框架和實現(xiàn)數據持久化的Hibernate框架結合起來開發(fā)遙感信息發(fā)布系統(tǒng),提高系統(tǒng)的實用性、靈活性,克服傳統(tǒng)Web系統(tǒng)的缺點。

  MVC設計模式和開源框架

  1、MVC設計模式

  MVC設計模式是一種聞名的用戶界面軟件開發(fā)設計模式,它是模型-視圖-控制器(Model-View-Controller)縮寫。

  MVC設計模式最早由Xerox在20世紀八十年代為Smaltalk-80語言發(fā)展提出的,但是這種設計思想并沒有局限于該語言,而是被廣泛地應用到了其他面向對象的編程語言中。

基于Struts和Hibenate的發(fā)布系統(tǒng)研究(圖一)
圖1 MVC模型組件關系圖

  在MVC設計模式中,它把應用程序分成了3個核心部分,原理圖如圖1所示。

  ⑴ 模型(Model)

  模型封裝了用戶數據和處理數據的業(yè)務邏輯,體現(xiàn)了應用程序的當前狀態(tài),而且可以將用戶數據狀態(tài)的變化提供給多個顯示該數據的視圖共用。模型是應用程序的核心。

  ⑵ 視圖(View)

  視圖提供了用戶界面,是用戶和應用程序的交互的窗口,既接受用戶輸入,也把模型數據狀態(tài)顯示給用戶,但是視圖不負責任何業(yè)務邏輯處理,僅僅是將用戶輸入數據傳遞給控制器或將模型數據顯示給用戶。

  ⑶ 控制器(Controller)

  控制器連接了模型和視圖,根據用戶請求判定將請求交給哪個模型來完成,然后調用視圖來顯示模型處理后的用戶請求結果。

  MVC設計模式將應用程序進行了分層,視圖和模型通過控制器連接,從而減少了用戶界面和業(yè)務邏輯之間的耦合,使程序設計更加清楚、靈活,也提高了軟件的可擴展性、可維護性。

  2、Struts框架

  Struts框架是Apache開源軟件聯(lián)盟(www.apache.org)的一個開源項目——Jakarta Struts Framework。Struts框架繼續(xù)了MVC設計模式的特性,遵守了J2EE的Servlet、jsp等技術規(guī)范,并且根據J2EE的特點做了相應的變化和擴展,是J2EE體系架構的一種輕量級實現(xiàn)。作為一款優(yōu)秀的Java Web應用程序的開發(fā)框架,Struts框架憑借其清楚性、靈活性,成為當前最為廣泛應用的輕量級Java Web 開發(fā)框架。

  Struts框架實現(xiàn)了MVC設計模式,其工作原理圖如圖2所示:

基于Struts和Hibenate的發(fā)布系統(tǒng)研究(圖二)
圖2 Struts框架原理圖

  ⑴ 控制器的實現(xiàn)

  Struts框架中采用了ActionServlet和Action類以及Struts-config.xml配置文件作為控制器的實現(xiàn)。

  其中,Struts-config.xml配置文件配置了不同用戶請求及對應的具體業(yè)務邏輯組件來供ActionServlet類查詢。

  ActionServlet類是中心Servlet,負責處理所有的用戶請求。當用戶提出請求,ActionServlet類最先對請求進行處理,它將根據Struts-config.xml配置文件將用戶請求映射到具體的Action類;而當Action類調用模型組件處理好用戶請求,并返回了處理結果后,仍然由ActionServlet類根據Struts-config.xml配置文件將結果轉發(fā)到視圖提供給用戶,或者轉發(fā)另外一個Action做進一步處理。

  Action類實現(xiàn)了具體的業(yè)務邏輯,它接受用戶的輸入,然后調用具體的模型組件來完成用戶請求。

  ⑵ 視圖的實現(xiàn)

  Struts構架主要采用了JSP作為視圖的實現(xiàn),它提供了豐富的JSP標簽庫支持應用程序的開發(fā),而且引入了ActionForm組件(實質為JavaBean)作為用戶表單的封裝來完成數據的傳輸。

  ⑶ 模型的實現(xiàn)

  Struts框架對模型——即復雜的數據持久化層沒有提供太多的支持,但是這也就是說開發(fā)人員有更多自由來選擇合適量級的持久化技術,比如Hibernate、EJB等等。

  Struts框架實現(xiàn)了MVC設計模式,但是它是典型的表現(xiàn)層框架,對模型的實現(xiàn)是不足的,所以有必要引入其他架構加強對模型的實現(xiàn)。

  3、Hibenate框架

  Hibernate框架是開放源代碼的對象關系映射工具(Object-Relational Mapping),是一款基于Java環(huán)境的優(yōu)秀的對象持久化開發(fā)框架。它根據O/R(對象/關系)映射技術思想,對JDBC進行了輕量級封裝,使開發(fā)人員可以使用一種面向對象的方式來操縱和治理關系數據庫,所以從技術本質上來說該框架是一種提供面向對象的數據庫服務中間件。

  Hibernate框架位于應用程序的業(yè)務化和持久化層,在運行時的體系結構如圖3所示:

  sessionFactory接口,是一個數據庫映射關系的內存映像,它是線程安全的,所以可以為多個線程同時調用產生Session,是Session的工廠,另外它為事務之間可以重用的數據提供了可供選擇的二級緩存。



發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 和林格尔县| 施甸县| 嘉荫县| 昔阳县| 铁力市| 元朗区| 积石山| 于田县| 四会市| 梨树县| 金阳县| 故城县| 枣阳市| 高雄市| 景洪市| 得荣县| 平度市| 阳信县| 三明市| 达孜县| 梅河口市| 榆林市| 托里县| 松潘县| 当涂县| 民和| 湘潭市| 榆林市| 龙陵县| 镇江市| 来凤县| 芒康县| 眉山市| 凤凰县| 工布江达县| 桦川县| 南澳县| 什邡市| 安达市| 宁陵县| 克拉玛依市|