Appearance
大纲
- Spring 概念
- 常用模块
- IOC
- AOP
- Spring 事务
- Spring MVC
Spring 介绍
什么是Spring
Spring 是一个轻量级的开源Java开发框架,旨在提高开发人员的开发效率以及系统的可维护性。
一般来说,我们常说的 Spring 框架指的是 Spring Framework, 他是多模块的一个集合,这些模块能够比较方便的帮助我们来进行开发。
Spring 有很多特性,也支持很多功能,了解Spring 框架,我们一般会从它支持的 IOC 和 AOP 这两个核心功能来最开始认识它。
目前Spring 最大的一个优势是它构建了一个非常不错的Java生态,你能够在这里面找到不同需求需要的处理方案。
Spring 的官网: https://spring.io/
Github地址: https://github.com/spring-projects/spring-framework
Spring 的具体模块可以放后面了解,主要模块了解下。
Spring 5.x 主要模块
各个模块的依赖关系

Core Container
其中主要模块中,Core Container 是 Spring 框架的核心模块,也是基础模块,它提供了 IOC 的依赖注入功能,Spring 的其他模块实现的功能也是在依赖该模块的基础上进行实现的。
Core Container 的子模块:
- spring-core:Spring 框架基本的核心工具类。
- spring-beans:提供对 bean 的创建、配置和管理等功能的支持。
- spring-context:提供对国际化、事件传播、资源加载等功能的支持。
- spring-expression:提供对表达式语言(Spring Expression Language) SpEL 的支持,只依赖于 core 模块,不依赖于其他模块,可以单独使用
AOP
- spring-aspects:该模块为与 AspectJ 的集成提供支持。
- spring-aop:提供了面向切面的编程实现。
- spring-instrument:提供了为 JVM 添加代理(agent)的功能。 具体来讲,它为 Tomcat 提供了一个织入代理,能够为 Tomcat 传递类文 件,就像这些文件是被类加载器加载的一样。(这个模块的使用场景非常有限)
Spring 循环依赖 🚩
参考: https://wx.zsxq.com/dweb2/index/columns/48418884588288
参考