Spring 框架

 2022-09-04
原文地址:https://cloud.tencent.com/developer/article/1509994

Spring 是一种轻量级开发框架,旨在提高开发人员的开发效率以及系统的可维护性。Spring 官网:https://spring.io/

一般说 Spring 框架指的都是 Spring Framework,它是很多模块的集合,使用这些模块可以很方便地协助我们进行开发。

这些模块是:核心容器、数据访问/集成,、Web、AOP(面向切面编程)、工具、消息和测试模块。比如:Core Container 中的 Core 组件是 Spring 所有组件的核心,Beans 组件和 Context 组件是实现 IOC 和依赖注入的基础,AOP 组件用来实现面向切面编程。

Spring 官网列出的 Spring 的 6 个特征:

  • 核心技术 :依赖注入(DI),AOP,事件(events),资源,i18n,验证,数据绑定,类型转换,SpEL。
  • 测试 :模拟对象,TestContext 框架,Spring MVC 测试,WebTestClient。
  • 数据访问 :事务,DAO 支持,JDBC,ORM,编组 XML。
  • Web支持 : Spring MVC 和 Spring WebFlux Web 框架。
  • 集成 :远程处理,JMS,JCA,JMX,电子邮件,任务,调度,缓存。
  • 语言 :Kotlin,Groovy,动态语言。

下图对应的是 Spring 4.x 版本,最新的 5.x 版本中 Web 模块的 Portlet 组件已经被废弃,同时增加了用于异步响应式处理的 WebFlux 组件。

202209042302315101.png

Spring 主要模块

  • Spring Core: Spring 其他所有的功能都需要依赖于该类库,主要提供 IoC 依赖注入功能。
  • Spring Aspects : 该模块为与 AspectJ 的集成提供支持。
  • Spring AOP :提供了面向切面的编程实现。
  • Spring JDBC : Java 数据库连接。
  • Spring JMS :Java 消息服务。
  • Spring ORM : 用于支持 Hibernate 等 ORM 工具。
  • Spring Web : 为创建 Web 应用程序提供支持。
  • Spring Test : 提供了对 JUnit 和 TestNG 测试的支持。