降低代码的耦合度----IOC/DI
简化事务的操作----AOP
Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用。Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson创建。简单来说,Spring是一个分层的JavaSE/EE full-stack(一站式) 轻量级开源框架。
核心技术:依赖注入、事件、资源、i18n、验证、数据绑定、类型转换、SpEL、AOP。
测试:模拟对象、TestContext 框架、Spring MVC 测试、WebTestClient.
数据访问:事务、DAO 支持、JDBC、ORM、Marshalling XML。
Spring MVC和 Spring WebFlux Web 框架。
集成:远程处理、JMS、JCA、JMX、电子邮件、任务、调度、缓存。
语言:Kotlin、Groovy、动态语言。
Spring是模块化的框架,Spring有很多功能,根据功能划分了很多可拔插的模块
我需要什么功能,项目中插入哪个模块就可以,导入对应的依赖
Core Container:核心容器,如果使用Spring的功能,这个模块是核心,是基础,基本的IOC
AOP and Instrumentation:AOP模块
Spring AOP
Spring的AOP实现
Aspects
Spring整合aspects框架实现AOP
Instrumentation
Messaging:消息模块
Data Access/Integration:整合数据操作的框架和事务管理
Web:Spring MVC
Access/Integration:整合数据操作的框架和事务管理
Web:Spring MVC
Test:测试模块