参考文档:https://blog.csdn.net/ThinkWon/article/details/102810748
一、Spring
1. Spring简介、设计理念、优缺点、应用场景 :
https://blog.csdn.net/ThinkWon/article/details/102810748
1.1.简介:Spring是一个轻量级Java开发框架。Spring功能的底层都依赖于它的两个核心特性,也就是依赖注入(dependency injection,DI)和面向切面编程(aspect-oriented programming,AOP)。
1.2.Spring框架的模块组成:
Spring 框架是一个分层架构,由 7 个模块组成。
1.3.Spring框架核心
Spring设计目标:Spring为开发者提供一个一站式轻量级应用开发平台;
Spring设计理念:在JavaEE开发中,支持POJO和JavaBean开发方式,使应用面向接口开发,充分支持OO(面向对象)设计方法;Spring通过IoC容器实现对象耦合关系的管理,并实现依赖反转,将对象之间的依赖关系交给IoC容器,实现解耦;
Spring框架的核心:IoC容器和AOP模块。通过IoC容器管理POJO对象以及他们之间的耦合关系;通过AOP以动态非侵入的方式增强服务。
1.4.Spring的优缺点
1.5.Spring的应用场景
应用场景:JavaEE企业应用开发,包括SSH、SSM等
2. Spring模块组成(框架组成、整体架构、体系架构、体系结构) :
https://blog.csdn.net/ThinkWon/article/details/102810819
Spring 总共大约有 20 个模块, 由 1300 多个不同的文件构成。 而这些组件被分别整合在核心容器(Core Container) 、 AOP(Aspect Oriented Programming)和设备支持(Instrmentation) 、数据访问与集成(Data Access/Integeration) 、 Web、 消息(Messaging) 、 Test等 6 个模块中。
以下是 Spring 5 的模块结构图:
核心容器:Spring的核心容器是其他模块建立的基础,有spring-core、spring-beans、spring-context、spring-context-support和spring-expression(Spring表达式语言)等模块组成。
AOP 和设备支持:由spring-aop、 spring-aspects 和 spring-instrument等 3 个模块组成。
数据访问与集成:由 spring-jdbc、spring-orm、spring-oxm、spring-jms 和 spring-tx 等 5 个模块组成。
Web:由spring-websocket、spring-webmvc、spring-web、portlet和spring-webflux模块等 5 个模块组成。
消息(Messaging):即 spring-messaging 模块。spring-messaging 是从 Spring4 开始新加入的一个模块, 该模块提供了对消息传递体系结构和协议的支持。
Test:即 spring-test 模块。spring-test 模块主要为测试提供支持的,支持使用JUnit或TestNG对Spring组件进行单元测试和集成测试。
https://blog.csdn.net/ThinkWon/article/details/102810819
3. Spring容器中bean的生命周期:
https://blog.csdn.net/ThinkWon/article/details/102866432
4. 控制反转(IoC)与依赖注入(DI)详解:
https://blog.csdn.net/ThinkWon/article/details/102912332