Spring 體系結構詳解

2021-08-14 09:02:38 字數 1564 閱讀 7241

核心容器(core container)

core和beans模組提供了spring最基礎的功能,提供ioc和依賴注入特性。這裡的基礎概念是beanfactory,它提供對factory模式的經典實現來消除對程式性單例模式的需要,並真正地允許你從程式邏輯中分離出依賴關係和配置。

expression language,表示式語言模組,提供了在執行期間查詢和操作物件圖的強大能力。支援訪問和修改屬性值,方法呼叫,支援訪問及修改陣列、容器和索引器,命名變數,支援算數和邏輯運算,支援從spring容器獲取bean,它也支援列表投影、選擇和一般的列表聚合等。

資料訪問/整合部分(data access/integration)

jdbc模組,提供對jdbc的抽象,它可消除冗長的jdbc編碼和解析資料庫廠商特有的錯誤**。

orm模組,提供了常用的「物件/關係」對映api的整合層。其中包括jpa、jdo、hibernate和ibatis.利用orm封裝包,可以混合使用所有spring提供的特性進行「物件/關係」對映,如簡單宣告式事務管理。

oxm模組,提供乙個支援object和xml進行對映的抽象層。其中包括jaxb、castor、xmlbeans、jibx和xstream.

jms模組,提供一套「訊息生產者、消費者」模板用於更加簡單的使用jms,jms用於在兩個應用程式之間,或分布式系統中傳送訊息,進行非同步通訊。

transaction模組,支援程式通過簡單宣告式事務管理,只要是spring管理物件都能得到spring管理事務的好處,即使是pojo,也可以為他們提供事務。

web

web-socket模組,websocket protocol是html5一種新的協議。它實現了瀏覽器與伺服器全雙工通訊,spring支援websocket通訊。

web模組,提供了基礎的web功能。例如多檔案上傳、整合ioc容器、遠端過程訪問以及對webservice支援,並提供乙個resttemplate類來提供方便的restful services訪問。

web-servlet模組,提供了web應用的model-view-controller(mvc)實現。spring mvc框架提供了基於註解的請求資源注入、更簡單的資料繫結、資料驗證等及一套非常易用的jsp標籤,完全無縫與spring其他技術協作。

web-portlet模組,提供了在portlet環境下的mvc實現。

aop

aop模組,提供了符合aop聯盟規範的面向切面的程式設計實現,讓你可以定義如方法***和切入點,從邏輯上講,可以減弱**的功能耦合,清晰地被分離開。而且,利用原始碼級地元資料功能,還可以將各種行為資訊合併到你的**中。

aspects模組,提供了對aspectj的整合。

instrumentation模組,提供一些類級的工具支援和classloader級的實現,可以在一些特定的應用伺服器中使用。

test

Spring體系結構

b ioc b 核心模組 實現ioc功能 核心介面為beanfactory context模組 構建於核心模組之上 擴充套件了beanfactory i18n國際化 bean生命週期控制 框架事件體系 資源載入透明化 郵件服務 任務排程 jndi定位 ejb整合 遠端訪問 表示式語言模組 是el的乙...

Spring體系結構

參考 核心容器由spring core,spring beans,spring context,spring context support和spring expression spel,spring表示式語言,spring expression language 等模組組成,它們的細節如下 它們的...

Spring體系結構

從這個圖中我們可以看出spring框架的核心元件只有三個 core context和beans。他們構建起了整個spring的骨骼架構,沒有他們就不可能有aop web等上層的特性功能。上面這些是spring特性功能。其中比較重要的幾個包 aop包 主要提供面向切面程式設計的實現 web 主要提供了...