后端开发必须知道的Spring框架基础模块大全

📌个人主页个人主页
​🧀 推荐专栏后端开发成神之路
📝作者简介:一个在读研中创业、工作中学习,能搞全栈、也搞算法、目前在搞大数据的大厂打工人。真诚地想分享自己的内容,希望能帮到你,一起学习、一起进步!
⭐️关注我,持续分享干货!用实打实的经验来帮你少走弯路⭐️


引言

在初步学习使用Spring进行开发时,得益于其优秀的设计,我们往往直接@AutoWired就可以直接把想要的组件拿进来直接使用。但是面对庞大的Spring框架,我们仍然有必要搞清楚它到底能给我们提供哪些能力,才能做到有的放矢。

本文的结构如下:

一、Spring Core

CoreBeans 模块是框架的基础部分,提供IOC和依赖注入特性。 这里的基础 概念是 BeanFactory,它提供对 Factory 模式的经典实 现来消除对程序’性单例模式的需要,并真正地允许你从程序逻辑中分离出依赖关系和配置。

1.1 Core

主要包含 Spring 框架基本的核心工具类, Spring 的其他组件都要用到这个包 里的类,Core模块是其他组件的基本核心。

1.2 Beans(BeanFactory的作用)

它包含访问配直文件、创建和管理 bean 以及进行 Inversion of Control I Dependency Injection ( IOC/DI )操作相关的所有类。

1.3 Context(ApplicationContext的作用)

模构建于 Core 和 Beans 模块基础之上,提供了一种类似JNDI 注册器的框 架式的对象访问方法。 Context 模块继承了 Beans 的特性,为 Spring 核 心提供了大量 扩展,添加了对国际化(例如资源绑定)、事件传播、资源加载和对 Context 的透明创 建的支持。 Context 模块同时也支持 J2EE 的一些特 性, ApplicationContext 接口是 Context 模块的关键。

  • 本质区别:使用BeanFacotry的bean是延时加载的,ApplicationContext是非延时加载的

1.4 Expression Language

模块提供了强大的表达式语言,用于在运行时查询和操纵对象。 它是 JSP 2.1 规范中定义的 unifed expression language 的扩展。 该语言支持设直/获取属 性的值,属性的分配,方法的调用,访问数组上下文( accessiong the context of arrays )、 容器和索引器、逻辑和算术运算符、命名变量以及从Spring的 IoC 容器中根据名称检索对象。

二、Spring Data Access/Integration

2.1 JDBC

模块提供了一个 JDBC 抽象层,它可以消除冗长的 JDBC 编码和解析数据库厂 商特有的错误代码。
这个模块包含了 Spring 对 JDBC 数据访问进行封装的所有类

2.2 ORM 模块为流行的对象-关系映射 API,

如 JPA、 JDO、 Hibernate、 iBatis 等,提供了 一个交互层。利用 ORM 封装包,可以混合使用所有Spring提供的特性进行 O/R 映射, 如前边提到的简单声 明性事务管理。

2.3 OXM 模块提供了一个对 ObjecνXML 映射实现的抽象层,

Object/XML 映射实现包括 JAXB、 Castor、 XMLBeans、 JiBX 和 XStrearn.

2.4 JMS ( Java Messaging Service )

模块主要包含了 一些制造和消费消息的特性。像我们在高并发系统中常用的消息队列架构模式,实现生产者和消费者的解耦。

2.5 Transaction

支持编程和声明性的事务管理,这些事务类必须实现特定的接口,并 且对所有的 POJO 都适用

三、 Spring Web

Web 模块:提供了基础的面向 Web 的集成特性c 例如,多文件上传、使用 servlet listeners 初始化
IoC 容器以及一个面向 Web 的应用上下文。 它还包含 Spring 远程支持中 Web 的相关部分。

四、 Spring Aop

4.1 Aspects

该模块提供了对 AspectJ 的集成支持。

4.2 Instrumentation

该模块提供了 class instrumentation 支持和 classloader 实现,使得可以在特
定的应用服务器上使用

五、Test

Test 模块支持使用 JUnit 和 TestNG 对 Spring 组件进行测试

六、 Spring 容器继承图:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陶人超有料

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值