JAVA SSH 框架介紹
SSH 為 struts+spring+hibernate 的一個整合框架,是目前較流行的一種JAVA Web應用程式開源框架。
Struts
Struts是一個基於Sun J2EE平臺的MVC框架,主要是採用Servlet和JSP技術來實現的。由於Struts能充分滿足應用開發的需求,簡單易用,敏捷迅速,在過去的一年中頗受關注。Struts把Servlet、JSP、自定義標籤和資訊資源(message resources)整合到一個統一的框架中,開發人員利用其進行開發時不用再自己編碼實現全套MVC模式,極大的節省了時間,所以說Struts是一個非常不錯的應用框架。
Spring
Spring是一個解決了許多在J2EE開發中常見的問題的強大框架。 Spring提供了管理業務物件的一致方法並且鼓勵了注入對介面程式設計而不是對類程式設計的良好習慣。Spring的架構基礎是基於使用JavaBean屬性的Inversion of Control容器。然而,這僅僅是完整圖景中的一部分:Spring在使用IOC容器作為構建完關注所有架構層的完整解決方案方面是獨一無二的。 Spring提供了唯一的資料訪問抽象,包括簡單和有效率的JDBC框架,極大的改進了效率並且減少了可能的錯誤。Spring的資料訪問架構還整合了Hibernate和其他O/R mapping解決方案。Spring還提供了唯一的事務管理抽象,它能夠在各種底層事務管理技術,例如JTA或者JDBC事務提供一個一致的程式設計模型。Spring提供了一個用標準Java語言編寫的AOP框架,它給POJOs提供了宣告式的事務管理和其他企業事務--如果你需要--還能實現你自己的aspects。這個框架足夠強大,使得應用程式能夠拋開EJB的複雜性,同時享受著和傳統EJB相關的關鍵服務。Spring還提供了可以和IoC容器整合的強大而靈活的MVC Web框架。
官方地址:spring: http://www.springsource.org
Hibernate
Hibernate是一個開放原始碼的物件關係對映框架,它對JDBC進行了非常輕量級的物件封裝,使得Java程式設計師可以隨心所欲的使用物件程式設計思維來操縱資料庫。 Hibernate可以應用在任何使用JDBC的場合,既可以在Java的客戶端程式實用,也可以在Servlet/JSP的Web應用中使用,最具革命意義的是,Hibernate可以在應用EJB的J2EE架構中取代CMP,完成資料持久化的重任。
在SSH 的組合框架模式中,三者各自的作用
Struts 是一個很好的MVC框架,主要技術是Servlet和Jsp。Struts的MVC設計模式可以使我們的邏輯變得很清晰,讓我們寫的程式層次分明。
Spring 提供了管理業務物件的一致方法,並鼓勵注入對介面程式設計而不是對類程式設計的良好習慣,使我們的產品在最大程度上解耦。
Hibernate 是用來持久化資料的,提供了完全物件導向的資料庫操作。Hibernate對JDBC進行了非常輕量級的封裝,它使得與關係型資料庫打交道變得非常輕鬆。
以下是SSH架構圖:
SSH架構圖
Struts負責Web層:
ActionFormBean接收網頁中表單提交的資料,然後通過Action進行處理,再Forward到對應的網頁,在Struts-config.xml中定義了<action-mapping>,ActionServlet會載入進來。
Spring負責業務層管理,即Service:
Service為Action提供統一的呼叫介面,封裝持久層的DAO,並整合Hibernate,Spring可對JavaBean和事物進行統一管理。
Hibernate負責持久層,完成資料庫的CRUD操作:
Hibernate有一組hbm.xml檔案和PO,是與資料庫中的表相對應的,然後定義DAO,這些是與資料庫打交道的類。
在Struts+Spring+Hibernate系統中,物件之間的呼叫流程如下:
Struts——>Spring——>Hibernate
JSP——>Action——>Service——>DAO——>Hibernate
相關文章
- [轉]SSH框架簡介框架
- Java常用的5大框架介紹!Java框架
- Java中幾種常用的RPC框架介紹JavaRPC框架
- TPHP框架介紹PHP框架
- .NET框架介紹框架
- golang ssh包使用方法介紹Golang
- 分享6個Java框架及優缺點介紹Java框架
- Java集合框架的概念以及常用介面的介紹Java框架
- Java介紹Java
- spring框架的介紹Spring框架
- 搜尋引擎框架介紹框架
- Spring框架之IOC介紹Spring框架
- Retrofit網路框架介紹框架
- Gin框架介紹及使用框架
- Scrapy框架的使用之Scrapy框架介紹框架
- Vert.x的介紹!這是目前最快的Java框架Java框架
- Android系統介紹與框架Android框架
- MyBatis框架介紹及其實操MyBatis框架
- Android模組化框架介紹Android框架
- Scrapy 框架介紹之 Puppeteer 渲染框架
- 瀏覽器fuzz框架介紹瀏覽器框架
- Prism:框架介紹與安裝框架
- Net6 EFcore框架介紹框架
- T框架介紹(自動化測試框架)框架
- java-ToStringBuilder介紹JavaUI
- Java Selenide 介紹&使用JavaIDE
- java集合類介紹Java
- 更好的 java 重試框架 sisyphus 配置的 2 種方式介紹Java框架
- 簡單介紹一下Java常用的五大框架!Java框架
- Selenium Part1:框架搭建與selenium框架介紹框架
- xshell-ssh自動多級跳轉功能介紹
- MyBatis框架介紹及實戰操作MyBatis框架
- dotnet core微服務框架Jimu介紹微服務框架
- lms微服務框架主機介紹微服務框架
- 手寫開源ORM框架介紹ORM框架
- Java字串編碼介紹Java字串編碼
- java ShutdownHook介紹與使用JavaHook
- Java Stream API groupingBy()介紹JavaAPI
- Java 20 新功能介紹Java