SSH框架分析與總結


SSH框架

首先,SSH不是一個框架,而是多個框架(struts+spring+hibernate)的集成,是目前較流行的一種Web應用程序開源集成框架,用於構建靈活、易於擴展的多層Web應用程序。


什麼是Struts:

struts是開源框架。使用Struts的目的是爲了幫助我們減少在運用MVC設計模型來開發Web應用的時間。

如果我們想混合使用Servlets和JSP的優點來建立可擴展的應用,struts是一個不錯的選擇。

什麼是Spring:

Spring是一個開源框架,Spring是於2003 年興起的一個輕量級的Java 開發框架,由Rod Johnson創建。

簡單來說,Spring是一個分層的JavaSE/EEfull-stack(一站式) 輕量級開源框架。

什麼是Hibernate:

Hibernate是一個開放源代碼的對象關係映射框架,它對JDBC進行了非常輕量級的對象封裝,

它將POJO與數據庫表建立映射關係,是一個全自動的orm框架,hibernate可以自動生成SQL語句,自動執行,使

得Java程序員

可以隨心所欲的使用對象編程思維來操縱數據庫。 Hibernate可以應用在任何使用JDBC的場合,既可以在Java的

客戶端程序使用,也可以在Servlet/JSP的Web應用中使用,最具革命意義的是,Hibernate可以在應用EJB的J2EE

架構中取代CMP,完成數據持久化的重任。


集成SSH框架的系統從職責上分爲四層:表示層、業務邏輯層、數據持久層和域模塊層(實體層)。


基本流程:

1、在表示層中,首先通過JSP頁面實現交互界面,負責傳送請求(Request)和接收響應(Response),然後Struts

根據配置文件(struts-config.xml)將ActionServlet接收到的Request委派給相應的Action處理。


2、在業務層中,管理服務組件的Spring IoC容器負責向Action提供業務模型(Model)組件和該組件的協作對象數

據處理(DAO)組件完成業務邏輯,並提供事務處理、緩衝池等容器組件以提升系統性能和保證數據的完整性。


3、在持久層中,則依賴於Hibernate的對象化映射和數據庫交互,處理DAO組件請求的數據,並返回處理結果。

採用上述開發模型,不僅實現了視圖、控制器與模型的徹底分離,而且還實現了業務邏輯層與持久層的分離。這

樣無論前端如何變化,模型層只需很少的改動,並且數據庫的變化也不會對前端有所影響,大大提高了系統的可

複用性。而且由於不同層之間耦合度小,有利於團隊成員並行工作,大大提高了開發效率。


總結:

Struts作爲系統的整體基礎架構,負責MVC的分離,在Struts框架的模型部分,控制業務跳轉利用Hibernate框架

對持久層提供支持Spring一方面作爲一個輕量級的IoC容器,負責查找、定位、創建和管理對象及對象之間的依

賴關係,另一方面能使Struts和Hibernate更好地工作。


發佈了35 篇原創文章 · 獲贊 15 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章