1前言
2基本原理
3IOC容器
4Bean
5依赖
6作用域
7加载
IOC容器在启动的过程中,需要加载Bean的配置元数据、执行Bean的实例化、执行Bean的依赖注入。本章节主要从代码的角度描述IOC容器的启动过程、追踪Spring-Framework技术框架涉及到的核心类的执行过程。
开发环境
开发环境使用的开发工具包括JDK、Eclipse、Maven、Spring-Framework、Log4j2。
Maven配置
在代码工程中的pom.xml中定义Maven依赖库:
spring-context 该依赖库是Spring-Framework提供的支持各种IOC容器环境、及其上下文相关的其他依赖库 |
log4j- 该依赖库是Apache提供的日志框架,支撑Spring-Framework的日志记录、调试、追踪 |
Log4J日志配置
在代码工程中配置追踪Spring-Framework的日志记录为追踪级别:
trace的日志级别主要用于框架的调用链路的追踪 |
Appender是定义日志输出的方式、日志记录的格式、日志文件的保存路径,支持日志保存到多个目标文件、不同的日志输出到不同的目标文件 |
定义Bean类
类TestService1 测试Bean类1 |
类TestService2 测试Bean类2 |
类TestService1依赖于类TestService2 |
日志追踪
根据追踪的日志分析IOC容器的调用链路。
测试类
根据IOC容器的配置文件ioc-test初始化IOC容器、调用测试类输出追踪的日志
日志踪迹
XmlBeanDefinitionReader 根据Spring-Framework技术框架定义的XML配置规范验证IOC容器配置元数据的合法性、读取Bean的配置元数据 |
DefaultListableBeanFactory IOC容器接口BeanFactory的默认实现类,加载Bean的配置元数据到BeanDefinition中、执行Bean的实例化、执行Bean的依赖注入 |
(未完待续)