spring中bean的生命周期以及初始化过程 细化版

spring 中是我们常见的bean bean的生命周期以及初始化过程

Spring ioc(控制反转)

spring中bean的生命周期以及初始化过程 细化版

1 ClassPathXmlApplicationContext类  容器加载配置文件bean.xml 文件 通过构造方法

spring中bean的生命周期以及初始化过程 细化版

spring中bean的生命周期以及初始化过程 细化版

2 AbstractApplicationContext 在这个类中初始化 refresh()方法

 

spring中bean的生命周期以及初始化过程 细化版

spring中bean的生命周期以及初始化过程 细化版

调用obtainFreshBeanFactory()

spring中bean的生命周期以及初始化过程 细化版

spring中bean的生命周期以及初始化过程 细化版

加载loadBeanDefinitions()方法 加载配置文件路径

spring中bean的生命周期以及初始化过程 细化版

XmlBeanDefinationReader、加载xml文件    

spring中bean的生命周期以及初始化过程 细化版

解析xml文件

spring中bean的生命周期以及初始化过程 细化版

registerBeanDefinaton()

spring中bean的生命周期以及初始化过程 细化版

3 在finishBeanFactoryInitialization() 中完成bean的 初始化  

AbstractAutowireCapableBeanFactory 类中的 doCreateBean 创建bean的实例

 

spring中bean的生命周期以及初始化过程 细化版

包括bean的前置和后置处理器

spring中bean的生命周期以及初始化过程 细化版

 

Spring DI (依赖注入)

spring中bean的生命周期以及初始化过程 细化版

 

对实例对象赋值

spring中bean的生命周期以及初始化过程 细化版

bean的使用完之后 就destory()方法销毁