程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> 基於MVC的J2EE應用開發分析與比較

基於MVC的J2EE應用開發分析與比較

編輯:關於JAVA

1 J2EE(J2EE培訓 )(Java2EnterpriseEdition)是一個利用Java技術來簡化諸多與企業解決方案的開發、部署和管理相關問題的企業級開發平台。由於J2EE技術的核心就是Java,所以它不僅繼承了Java語言的優點,如:平台無關性,安全性等,而且增加了一整套核心企業應用程序編程接口,其中包括:Serv2lets,EJB(EnterpriseJavaBeans),JSP,JDBC等標准的模塊化組件 。

2 MVC設計模式

MVC是XeroxPARC在20世紀80年代為編程語言Smalltalk-80發明的一種軟件設計模式,後被推薦為Sun公司J2EE平台的設計模式。MVC將事務邏輯同數據表示層分離,同時也將應用的行為(即觸發事務處理的事件)單獨分離出來,形成模型/視圖/控制器(Model/View/Controller,MVC)結構模型(Model)是應用程序的主體部分。模型表示業務數據和業務邏輯。視圖(VIEw)是用戶看到並與之交互的界面。視圖向用戶顯示相關的數據,並能接收用戶的輸入數據。控制器(Controller)的作用是從客戶端接受請求,並選擇執行相應的業務邏輯,然後把響應結果送回到客戶端。模式通過將應用程序的輸入、處理和輸出MVC強制性分開會使軟件在健壯性、代碼重用和結構,方面上一個新的台階,因此特別適合開發中存在大

量用戶界面,並且業務邏輯復雜的大型應用程序。

3 基於Servlet+JavaBean的MVC設計模式

在出現早期制定了 和SUN JSP Model1 Model2

的2種規范,它們是對采用JSP技術構成Web應用的不同描述。

3.1 JSPModel1規范

以JSP為中心的開發模式為Mode1,其缺點是:在JSP頁面代碼中混雜了很多連接數據庫、操作數據庫的語句,這實際上是把持久層和表示層耦合到了一起,使得代碼的編寫和維護都很困難,程序結構非常不清晰。對於大型應用,這個問題尤為突出。

3.2 JSPModel2規范

基於Model1的缺點,在J2EEWEB應用中,逐漸采用了使用MVC設計模式的Model2的規范。Model2表示的是基於MVC設計模式的框架通過這種設計模型把應用邏輯、處理過程和顯示邏輯分成不同組件實現。這些組件可以進行交互和重用,從而彌補了Model1的不足。在J2EE的規范中,Servlet承擔著控制器的角色,JavaBean作為模型,完成系統的業務流程處理,JSP僅僅負責頁面的顯示。從而整個系統具有很好的層次結構,條理更清晰,任務明確,在代碼的可讀性與維護上,都得到了大大的改進。在具體的邏輯業務控制分派中,通過配置文件web1xml進行設置。以一個設備管理軟件的設備主機數據增刪改處理舉例。設備控制器組件SbzJServlet是一個Servlet.其在web1XML中的具體設置如下:

  sbzJServlet

  

   com1sourcemanage1servlet1SbzJServlet

  

  sbzJServlet

name>

  /servlet/sbzJServlet

-pattern>

MVC本身就是個非常復雜的系統,所以采用MVC實現Web應用時,最好選擇一個現成的MVC框架。在此基礎上進行開發,可以取得事半功倍的效果。

4 基於視圖層框架Struts的MVC設計模式

Struts是apache組織的一個開放源代碼項目,它提供了一個構建基於MVC體系結構的Web應用程序的框架。

 

5 基於多種框架的MVC設計模式

5.1持久層框架

由於對於數據庫的操作都很類似,首先打開數據庫連接,然後執行數據庫的操作,如增、刪、改等,最後關閉連接。如此操作,大多類似,但由於開發人員直接控制數據庫的連接與關閉,雖然效率高,但存在連接釋放不完全的風險。為了解決此問題,於是出現了O/RMapping(Object-RelationMapping)組件,Hibernate就是其優秀的解決方案之一 。

Hibernate框架有5個核心接口,分別為:Ses2sion、SessionFactory、Configuration、Transaction和Query(或criteria)。Session負責執行被持久化對象的CRUD(創建、讀取、更新、刪除)操作;Ses2sionFactory負責創建Session對象;Configuration負責配置並啟動Hibernate;Transaction負責事務相關的操作;Query負責執行各種數據庫查詢。在模型層的解決方案中,還出現了輕量級一站式解決框架Spring。其最大的特點就是IoC(控制反

轉),面向切面編程 。

5.2 Spring框架與其他框架的組合開源框架Spring是一個輕量級框架的實現。它關注提供一種方法管理你的業務對象。它是全面的和模塊化的,具有分層的體系結構。這意味著你能選擇使用它孤立的任何部分,它的架構仍然是穩定的。它的設計從底部幫助你編寫易於測試的代碼Spring是用於測試驅動工程的理想的框架 。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved