【SSH框架初瞭解】

我是太陽啦啦啦發表於2017-06-04

前言

最近開始進入了Java專案的學習,開始做一個網上商城的專案,在專案中接觸到了SSH框架,今天這篇部落格,小編來淺談一下SSH框架,也希望給大家帶來幫助!

核心

總述

SSH框架,即:SSH即Struts+Spring+Hibernate,是典型的J2EE三層結構,分為表現層、中間層和資料訪問層。三層體系將資料表現、業務邏輯和資料訪問分開。業務邏輯、資料訪問、許可權攔截及合法性校驗等工作放在中間層處理。客戶端不直接與資料庫互動,而是通過元件與中間層建立連線,再由中間層與資料庫打交道。


Struts2體系結構

Struts2是一個具有很好實用價值的Web MVC框架,它減少了直接運用MVC模式來開發Web應用的週期。重要的是它是一個開源框架,方便開發者深入研究瞭解其機制,越來越廣泛的接受和應用。而且它提供一個好的控制器和一套定製的標籤庫Taglib,著力在控制器和檢視上的應用,完美的體現了MVC設計思想。提供集中統一的許可權控制、國際化提示和訊息、輸入校驗和日誌記錄等技術支援。另外,它對其他技術和框架具有良好的融合性。如能與EJB、JDBC和Hibernate等資料庫訪問技術相結合,利用整合技術減少資料庫的工作量。


Hibernate框架:

ORM(物件/關聯式資料庫對映)

物件關係對映(ObjectRelational Mapping,簡稱ORM)是一種為了解決物件導向與關聯式資料庫存在的互不匹配的現象的技術。它完成了物件導向的程式語言到關係型資料庫的對映㈣。ORM框架可以看成應用程式和資料庫之間的橋樑,通過它,我們可以以物件導向的方式建模、操作,易用、易理解,同時也可以利用關係型資料庫系統對資料庫訪問操作的一些優勢。以物件導向的方式操作持久化物件,而ORM框架負責轉換成對應的SQL(結構化查詢語言)操作。

Hibernate概述

Hibernate是輕量級Java EE應用的持久層解決方案,是流行的ORM框架,它對JDBC進行了非常輕量級的物件封裝,使得Java程式設計師可以物件導向的方式來操縱資料庫。Hibernate不僅管理Java類到資料庫表的對映,還提供資料查詢和獲取資料的操作,可以減少人工使用SQL和JDBC處理資料的時間。

Hibernate體系結構

Hibernate實際上是一個提供資料庫服務的中介軟體。Hibernate的持久化解決方案將使用者從繁瑣的JDBC訪問中解脫出來,底層資料庫連線獲取,資料訪問的實現、事務控制都無須使用者關心,這種體系結構,將應用層從底層的JDBC/JTA API中抽象出來。Hibernate體系結構如圖(注:該圖來自於Hibernate官方參考文件)所示

Spring框架介紹:

Spring是從實際開發中抽取出來的開源框架,為企業的開發提供一個輕量級的解決方案。該解決方案包括:基於Ioc(控制反轉)的核心機制,以及AOP(面向切面程式設計)的思想,能與多種持久層技術的整合,是優秀的Web MVC框架等。Spring致力於Java EE應用各層的解決方案而不是僅僅專注於某一層的方案,它貫穿表現層、業務層、持久層,降低各層元件的耦合度,實現軟體各層的解耦.

 

輕量級

劃分一個應用是否屬於輕量級還是重量級,主要看它使用了多少服務,使用的服務越多,容器要為普通java物件做的工作就越多,必然會影響到應用的釋出時間或者是執行效能。對於Spring容器,它提供了很多服務,但這些服務預設是關閉的,應用對需要的服務可以現用現拿。而且,Spring是無侵入性的可擴充套件框架,Spring應用中的物件不依賴Spring具體的類。

 

Ioc(控制反轉)

所謂的控制反轉就是應用本身不負責依賴物件的建立及維護,依賴物件的建立及維護是由外部容器負責的。這樣控制權就由應用轉移到了外部容器,控制權的轉移就是所謂反轉。

總結

具體細節在下篇文章繼續介紹,歡迎大家多多提意見。

相關文章