1、Spring和Spring的组成
1.1、什么是Spring?
Spring是一个轻量级的控制反转和面向切面的的框架。
1.1.1、Spring的起源
Spring是Java EE开发的一个轻量级开源框架,由悉尼大学的音乐学博士Rod Johnson于2002 年提出,以interface21框架为基础,在2004年发布了Spring的第一个版本,Spring最大的目标是让Java EE的开发更容易,让现有的技术更加实用。
1.1.2、Spring的特点和优势
- 特点:
- 免费开源
- 控制反转
- 面向切面
- 非侵入式
- 依赖注入
- 组件化
- 容器
- 一站式
- 优势:
- 让Java EE的开发更容易
- 让现有的技术更加实用
- 便于进行单元测试
- 提供了良好的web MVC框架
- 对复杂API进行封装,比如JDBC,javaMail等
1.2、Spring有哪些组件?
1.2.1、Core Container(核心容器)
1.2.2、Data Access/Integration(数据访问/集成)
1.2.3、Web模块
- Web 模块:提供了基本的 Web 开发功能
- Servlet 模块:提供了 Spring MVC 框架
- WebSocket 模块:提供了简单的接口,用户只要实现接口就可以快速的搭建 WebSocket Server,从而实现双向通讯
- Webflux 模块: Spring WebFlux 用于创建基于事件循环执行模型的完全异步非阻塞的应用程序
- Portlet 模块: 提供了在 Portlet 环境中使用 MVC 实现,在Spring 5.x中已经移除
1.2.4、AOP、Aspects、Instrumentation和Messaging
-
AOP 模块:提供了面向切面编程实现,比如日志记录、权限控制、性能统计 -
Aspects 模块:提供了一个AOP框架 -
Instrumentation 模块:提供了类工具的支持和类加载器的实现 -
messaging 模块:提供了对消息传递体系结构和协议的支持 -
jcl 模块: Spring 5.x中新增的日志框架集成的模块
1.2.5、Test模块
- Test 模块: 支持 Junit 和 TestNG 测试框架
|