spring5的基本組成(6個模塊)


1:數據訪問及集成(Data Access/Integeration):jdbc,orm,oxm,jms,transactions

——由 spring-jdbc、spring-tx、spring-orm、spring-jms 和 spring-oxm 5 個模塊組成。

spring-jdbc模塊是 Spring 提供的 JDBC 抽象框架的主要實現模塊,用於簡化 Spring JDBC 操作

spring-tx 模塊是 Spring JDBC 事務控制實現模塊

spring-orm 模塊是 ORM 框架支持模塊,主要集成 Hibernate, Java Persistence API (JPA) 和Java Data Objects (JDO) 用於資源管理、數據訪問對象(DAO)的實現和事務策略

spring-jms 模塊(Java Messaging Service)能夠發送和接收信息,自 Spring Framework 4.1 以后,他還提供了對 spring-messaging 模塊的支撐

 

2:web:websocket,webmvc,web,webFlux

——由 spring-web、spring-webmvc、spring-websocket 和 spring-webflux 4 個模塊組成

spring-web 模塊為 Spring 提供了最基礎 Web 支持,主要建立於核心容器之上,通過 Servlet 或者 Listeners 來初始化 IOC 容器,也包含一些與 Web 相關的支持

spring-webmvc 模塊眾所周知是一個的 Web-Servlet 模塊,實現了 Spring MVC(model-view-Controller)的 Web 應用

spring-websocket 模塊主要是與 Web 前端的全雙工通訊的協議。

spring-webflux 是一個新的非堵塞函數式 Reactive Web 框架,可以用來建立異步的,非阻塞,事件驅動的服務,並且擴展性非常好

 

3:aop(Aspect Oriented Programming),aspects,設備支持(Instrmentation):aop,aspects,Instrmentation

——spring-aop、spring-aspects 和 spring-instrument 3 個模塊組成

spring-aop 是 Spring 的另一個核心模塊,是 AOP 主要的實現模塊。

spring-aspects 模塊集成自 AspectJ 框架,主要是為 Spring AOP 提供多種 AOP 實現方法

spring-instrument 模塊是基於 JAVA SE 中的"java.lang.instrument"進行設計的,應該算是 AOP的一個支援模塊,主要作用是在 JVM 啟用時,生成一個代理類,程序員通過代理類在運行時修改類的字節,從而改變一個類的功能,實現 AOP 的功能。

 

4:報文發送(Messaging):Messaging

——即 spring-messaging 模塊,是從 Spring4 開始新加入的一個模塊,主要職責是為 Spring 框架集成一些基礎的報文傳送應用。

 

5:核心容器(Core Container):Beans,Core,Context,Expression

——spring-beans  spring-core  spring-context  spring-expression(spring expression Language,SpEl) 4個模塊組成

spring-core 和 spring-beans 模塊是 Spring 框架的核心模塊,包含了控制反轉(Inversion ofControl, IOC)和依賴注入(Dependency Injection, DI)

spring-context 模塊構架於核心模塊之上,他擴展了 BeanFactory,為她添加了 Bean 生命周期控制、框架事件體系以及資源加載透明化等功能。ApplicationContext 是該模塊的核心接口,她的超類是 BeanFactory。與BeanFactory 不同,ApplicationContext 容器實例化后會自動對所有的單實例 Bean 進行實例化與依

賴關系的裝配,使之處於待用狀態

spring-context-support 模塊是對 Spring IOC 容器的擴展支持,以及 IOC 子容器。

spring-context-indexer 模塊是 Spring 的類管理組件和 Classpath 掃描。

spring-expression 模塊是統一表達式語言(EL)的擴展模塊,可以查詢、管理運行中的對象,同時也方便的可以調用對象方法、操作數組、集合等。

 

6:測試(test):test

 ——spring-test 模塊,主要為測試提供支持的,畢竟在不需要發布(程序)到你的應用服務器或者連接到其他企業設施的情況下能夠執行一些集成測試或者其他測試對於任何企業都是非常重要的


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM