Spring是一个开源框架,为了解决企业应用开发的复杂性而创建的,但现在已经不止应用于企业应用。
可以帮助我们分离组件之间的依赖关系,所谓的组件之间的依赖关系,即应用程序当中对象和对象之间的依赖关系。
核心概念:核心概念可以参考我之前写的博客https://blog.csdn.net/qq_41061437/article/details/81257185
主要就是:
IOC(控制反转):创建对象和对象之间的依赖关系的权利交给Spring容器去帮我们管理
DI(依赖注入):就是对象和对象之间的依赖关系的创建
AOP(面向切面编程):这里简单来说就是把一批功能提取出来,降低对象之间的耦合度。
下面看看Spring的组成:
下面一一介绍一下:
①Core Container(核心模块)
Ⅰ、Core:IOC与DI最基本的实现就在这里面
Ⅱ、Beans:Bean工厂当中Bean的装配,所谓的Bean工厂其实就是创建对象的工厂,Bean的装配其实就是对象的创建的工作。
Ⅲ、Context:指的就是上下文,也就是IOC容器
Ⅳ、SpEL:Spring表达式语言
②Data Access/Integration(数据访问层模块)
Ⅰ、JDBC:就是JDBC技术
Ⅱ、ORM:支持一些数据集成框架,比如Hibernate、Mybatis
Ⅲ、OXM:对象与XML互相转换
Ⅳ、JMS:生产者和消费者消息功能的实现
Ⅴ、Transactions:事务
③Web
Ⅰ、WebSocket:就是Web的Socket开发
Ⅱ、Servlet:就是SpringMVC的功能,SpringMVC是包含在Spring中的
Ⅲ、Web:就是Web应用
Ⅳ、Portlet:大致意思就是一个网页中的子窗口
④
Ⅰ、AOP:即面向切面编程
Ⅱ、Aspects提供了对AspectJ的支持,AspectJ是面向切面编程的一个重要组成部分
Ⅲ、Instrumentation:检测器提供一个JVM的检测,还有tomcat的一个检测
Ⅳ、Messaging:Spring当中提供的一个消息处理的功能
⑤Test
Test就是Spring提供的一个Test模块,我们可以在Spring提供的一个环境中集成单元测试,就是在进行单元测试的时候,Spring会帮我们初始化一些需要用到的资源对象。