Spring框架結構

1.IoC

Spring核心模塊實現了IoC的功能,它將類與類之間的依賴從代碼中脫離出來,用配置的方式進行依賴關系描述,由IoC容器負責依賴之間的創建,拼接,管理等操作。BeanFactory接口是Spring框架的核心接口,它實現了容器的許多核心功能。
Context模塊構建于核心模塊之上,擴展了BeanFactory的功能,ApplicationContext是Context模塊的核心接口。
表達式語言模塊是統一表達式語言的一個擴展,該表達式語言用于查詢和管理運行期對象,支持設置/獲取對象特征,調用對象方法,操作數組,集合等。此外,該模塊還提供了邏輯表達式運算,變量定義等功能,可以方便的通過表達式串和Spring IoC進行操交互。

2.AOP

AOP(面向切面編程)模塊里,Spring提供了AOP Alliance規范的實現,還整合了AspectJ這種AOP語言的框架。在Spring中實現AOP有眾多選擇,Java5.0中引入了java.lang.instrument,允許在JVM啟動時啟動時,啟用一個代理類,通過該代理類在運行期修改類的字節碼,改變類的一個功能,從而實現AOP功能。

3.數據訪問和集成

數據的表現有多種形式(xml,表,消息等),同時每種數據形式有不同的數據訪問技術。
首先,Spring會站在DAO的抽象層面,建立一套面向DAO的統一異常體系,同時將數據訪問的檢查型異常轉換為非檢查型異常,為整合持久框架提供基礎。
其次,Spring通過模板化技術對各種數據訪問技術進行了薄層封裝,隱藏了模式化的代碼,使數據訪問的程序得到了簡化。這樣,Spring就建立了了和數據形式及訪問技術無關的統一的DAO層,借助AOP技術,Spring提供了聲明式事務的功能。

4.Web及遠程操作

該模塊是建立在Application Context模塊之上,提供了Web應用的各種工具類,如通過Listener或Servlet初始化Spring容器,將Spring容器注冊到Web容器中。該模塊還提供了多項面向Web的功能,如FreeMarker,XLST的支持等。
此外,Spring可以整合Struts,WebWork等MVC框架。

5.Web及遠程訪問

在Spring中有一個完整的類似于Struts的MVC框架,是SpringMVC。

6.WebSocket

WebSocket提供了一個在Web應用中高效,雙向的通信。它需要考慮到客戶端和服務器之間的高頻和低時延消息交換。
此外,Spring在遠程訪問及Web Service上能與很多著名框架進行整合。
純屬摘抄

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容