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

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

引言

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

9fa36a3d90246925d7cd3ec05d49ea3a.png


本文的结构如下:

30ce5ffde3a406dae0b2eab71d2ddac1.png


一、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 容器继承图:

7d8c451364d5851ef0942eae2fd6b6d8.png

相关文章
|
1天前
|
前端开发 Java 数据库连接
Spring框架初识
Spring 是一个分层的轻量级开源框架,核心功能包括控制反转(IOC)和面向切面编程(AOP)。主要模块有核心容器、Spring 上下文、AOP、DAO、ORM、Web 模块和 MVC 框架。它通过 IOC 将配置与代码分离,简化开发;AOP 提供了声明性事务管理等增强功能。
33 21
Spring框架初识
|
19天前
|
SQL Java 数据库连接
对Spring、SpringMVC、MyBatis框架的介绍与解释
Spring 框架提供了全面的基础设施支持,Spring MVC 专注于 Web 层的开发,而 MyBatis 则是一个高效的持久层框架。这三个框架结合使用,可以显著提升 Java 企业级应用的开发效率和质量。通过理解它们的核心特性和使用方法,开发者可以更好地构建和维护复杂的应用程序。
110 29
|
8天前
|
XML Java 开发者
通过springboot框架创建对象(一)
在Spring Boot中,对象创建依赖于Spring框架的核心特性——控制反转(IoC)和依赖注入(DI)。IoC将对象的创建和管理交由Spring应用上下文负责,开发者只需定义依赖关系。DI通过构造函数、setter方法或字段注入实现依赖对象的传递。Spring Boot的自动配置机制基于类路径和配置文件,自动为应用程序配置Spring容器,简化开发过程。Bean的生命周期包括定义扫描、实例化、依赖注入、初始化和销毁回调,均由Spring容器管理。这些特性提高了开发效率并简化了代码维护。
|
23天前
|
监控 Java 应用服务中间件
SpringBoot是如何简化Spring开发的,以及SpringBoot的特性以及源码分析
Spring Boot 通过简化配置、自动配置和嵌入式服务器等特性,大大简化了 Spring 应用的开发过程。它通过提供一系列 `starter` 依赖和开箱即用的默认配置,使开发者能够更专注于业务逻辑而非繁琐的配置。Spring Boot 的自动配置机制和强大的 Actuator 功能进一步提升了开发效率和应用的可维护性。通过对其源码的分析,可以更深入地理解其内部工作机制,从而更好地利用其特性进行开发。
42 6
|
30天前
|
前端开发 Java 数据库连接
Java后端开发-使用springboot进行Mybatis连接数据库步骤
本文介绍了使用Java和IDEA进行数据库操作的详细步骤,涵盖从数据库准备到测试类编写及运行的全过程。主要内容包括: 1. **数据库准备**:创建数据库和表。 2. **查询数据库**:验证数据库是否可用。 3. **IDEA代码配置**:构建实体类并配置数据库连接。 4. **测试类编写**:编写并运行测试类以确保一切正常。
56 2
|
1月前
|
开发框架 运维 监控
Spring Boot中的日志框架选择
在Spring Boot开发中,日志管理至关重要。常见的日志框架有Logback、Log4j2、Java Util Logging和Slf4j。选择合适的日志框架需考虑性能、灵活性、社区支持及集成配置。本文以Logback为例,演示了如何记录不同级别的日志消息,并强调合理配置日志框架对提升系统可靠性和开发效率的重要性。
|
1月前
|
人工智能 Java API
阿里云工程师跟通义灵码结伴编程, 用Spring AI Alibaba来开发 AI 答疑助手
本次分享的主题是阿里云工程师跟通义灵码结伴编程, 用Spring AI Alibaba来开发 AI 答疑助手,由阿里云两位工程师分享。
阿里云工程师跟通义灵码结伴编程, 用Spring AI Alibaba来开发 AI 答疑助手
|
2月前
|
人工智能 前端开发 Java
Spring AI Alibaba + 通义千问,开发AI应用如此简单!!!
本文介绍了如何使用Spring AI Alibaba开发一个简单的AI对话应用。通过引入`spring-ai-alibaba-starter`依赖和配置API密钥,结合Spring Boot项目,只需几行代码即可实现与AI模型的交互。具体步骤包括创建Spring Boot项目、编写Controller处理对话请求以及前端页面展示对话内容。此外,文章还介绍了如何通过添加对话记忆功能,使AI能够理解上下文并进行连贯对话。最后,总结了Spring AI为Java开发者带来的便利,简化了AI应用的开发流程。
909 0
|
2月前
|
设计模式 XML Java
【23种设计模式·全精解析 | 自定义Spring框架篇】Spring核心源码分析+自定义Spring的IOC功能,依赖注入功能
本文详细介绍了Spring框架的核心功能,并通过手写自定义Spring框架的方式,深入理解了Spring的IOC(控制反转)和DI(依赖注入)功能,并且学会实际运用设计模式到真实开发中。
【23种设计模式·全精解析 | 自定义Spring框架篇】Spring核心源码分析+自定义Spring的IOC功能,依赖注入功能
|
2月前
|
开发框架 小程序 前端开发
圈子社交app前端+后端源码,uniapp社交兴趣圈子开发,框架php圈子小程序安装搭建
本文介绍了圈子社交APP的源码获取、分析与定制,PHP实现的圈子框架设计及代码编写,以及圈子小程序的安装搭建。涵盖环境配置、数据库设计、前后端开发与接口对接等内容,确保平台的安全性、性能和功能完整性。通过详细指导,帮助开发者快速搭建稳定可靠的圈子社交平台。

热门文章

最新文章