javascript
SSH框架(Struts+Spring+Hibernate)
在SSH 的組合框架模式中,三者各自的作用?
Struts 是一個很好的MVC框架,主要技術是Servlet和Jsp。Struts的MVC設計模式可以使我們的邏輯變得很清晰,讓我們寫的程序層次分明。基于Struts開發可以簡化開發難度,提高開發效率。
Spring 提供了管理業務對象的一致方法,并鼓勵注入對接口編程而不是對類編程的良好習慣,使我們的產品在最大程度上解耦。
Hibernate 是用來持久化數據的,提供了完全面向對象的數據庫操作。Hibernate對JDBC進行了非常輕量級的封裝,它使得與關系型數據庫打交道變得非常輕松。
在Struts+Spring+Hibernate系統中,對象之間的調用流程如下:
??
Struts——>Spring——>Hibernate
JSP——>Action——>Service——>DAO——>Hibernate
SSH工作流程?
???????a.啟動服務器,加載工程以及web.xml.
???????????(實例化Lisener,Filter等組件,將Spring容器和Struts2控制創建)
???????b.客戶端發送請求,所有請求進入Struts2控制器。控制器根據請求類型不同,分別處理。
???????????(action請求,*.action會進入struts.xml尋找<action>配置.
????????????其他請求,*.jsp會直接調用請求資源,生成響應信息)
???????c.Struts2控制器根據<action>配置調用一個Action對象處理。
?????????整合方法一:將Action交給Spring容器
??????????(Action對象由struts2-spring-plugin.jar插件提供的 ?????????????????????StrutsSpringObjectFactory負責去Spring容器獲取)
?????????整合方法二:將Action置于Spring容器之外
??????????(Action對象由struts2-spring-plugin.jar插件提供的 ?????????????????????StrutsSpringObjectFactory負責創建,然后到Spring容器中尋找與Action
屬性匹配的Bean對象,給Action對象注入。(默認采用名稱匹配規則)
???????d.Struts2控制器執行defaultStack攔截器、Action對象、Result等組件處理.
???????e.執行Action的execute業務方法時,如果使用Service或DAO采用Spring的IoC機制調用。
???????f.執行Result生成響應信息,執行后續攔截器處理
???????g.將響應信息輸出。
總結
以上是生活随笔為你收集整理的SSH框架(Struts+Spring+Hibernate)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php ioc容器,PHP 在Swool
- 下一篇: windows os x linux比较