1.接口ConfigurableApplicationContext的实现抽象类AbstractApplicationContext的obtainFreshBeanFactory()方法作为入口开始分析

spring注入源码解读(IOC)

spring注入源码解读(IOC)

2. 子类AbstractRefreshableApplicationContext加载beanFactory

spring注入源码解读(IOC)

3.子类XmlWebApplicationContext对xml进行初始化

spring注入源码解读(IOC)

spring注入源码解读(IOC)

4.AbstractBeanDefinitionReader抽象类对资源进行加载

spring注入源码解读(IOC)

spring注入源码解读(IOC)

5.XmlBeanDefinitionReader加载具体xml文件

spring注入源码解读(IOC)

spring注入源码解读(IOC)

spring注入源码解读(IOC)

6.DefaultBeanDefinitionDocumentReader对xml文件解析

spring注入源码解读(IOC)

 

spring注入源码解读(IOC)

这边会判断如果是增强或者自定义的则走parseCustomElement

spring注入源码解读(IOC)

6.BeanDefinitionParserDelegate

spring注入源码解读(IOC)

7.这里根据具体的handler去调用各自的parse做bean的注入

spring注入源码解读(IOC)

 

 

 

 

相关文章: