Spring 框架 - 架構



Spring 潛在地可以成為您所有企業應用程式的一站式解決方案。但是,Spring 是模組化的,允許您選擇哪些模組適用於您,而無需引入其餘模組。以下部分詳細介紹了 Spring 框架中可用的所有模組。

Spring 框架提供了大約 20 個模組,可以根據應用程式需求使用。

Spring Framework Architecture

核心容器

核心容器由 Core、Beans、Context 和表示式語言模組組成,其詳細資訊如下:

  • Core 模組提供框架的基本部分,包括 IoC 和依賴注入功能。

  • Bean 模組提供 BeanFactory,它是工廠模式的複雜實現。

  • Context 模組建立在 Core 和 Beans 模組提供的堅實基礎之上,它是訪問定義和配置的任何物件的媒介。ApplicationContext 介面是 Context 模組的焦點。

  • SpEL 模組提供了一個強大的表示式語言,用於在執行時查詢和操作物件圖。

資料訪問/整合

資料訪問/整合層由 JDBC、ORM、OXM、JMS 和事務模組組成,其詳細資訊如下:

  • JDBC 模組提供了一個 JDBC 抽象層,消除了對乏味的 JDBC 相關編碼的需求。

  • ORM 模組為流行的物件關係對映 API 提供整合層,包括 JPA、JDO、Hibernate 和 iBatis。

  • OXM 模組提供了一個抽象層,支援用於 JAXB、Castor、XMLBeans、JiBX 和 XStream 的物件/XML 對映實現。

  • Java 訊息服務 JMS 模組包含用於生成和使用訊息的功能。

  • 事務 模組支援對實現特殊介面的類以及所有 POJO 進行程式設計和宣告式事務管理。

Web

Web 層由 Web、Web-MVC、Web-Socket 和 Web-Portlet 模組組成,其詳細資訊如下:

  • Web 模組提供基本的 Web 導向整合功能,例如多部分檔案上傳功能以及使用 servlet 偵聽器和麵向 Web 的應用程式上下文初始化 IoC 容器。

  • Web-MVC 模組包含 Spring 用於 Web 應用程式的模型-檢視-控制器 (MVC) 實現。

  • Web-Socket 模組為 Web 應用程式中客戶端和伺服器之間的基於 WebSocket 的雙向通訊提供支援。

  • Web-Portlet 模組提供在 portlet 環境中使用的 MVC 實現,並映象 Web-Servlet 模組的功能。

其他

還有一些其他重要的模組,例如 AOP、Aspects、Instrumentation、Web 和 Test 模組,其詳細資訊如下:

  • AOP 模組提供了一個面向方面的程式設計實現,允許您定義方法攔截器和切點,以乾淨地解耦實現應分離的功能的程式碼。

  • Aspects 模組提供與 AspectJ 的整合,AspectJ 又是一個強大且成熟的 AOP 框架。

  • Instrumentation 模組提供類檢測支援和類載入器實現,可在某些應用程式伺服器中使用。

  • Messaging 模組支援在應用程式中使用 STOMP 作為 WebSocket 子協議。它還支援用於路由和處理來自 WebSocket 客戶端的 STOMP 訊息的註解程式設計模型。

  • Test 模組支援使用 JUnit 或 TestNG 框架測試 Spring 元件。

廣告