IOC的⽣命周期是怎样的
时间: 2024-04-04 22:32:18 浏览: 12
IOC(Inversion of Control)的生命周期包括以下几个阶段:
1. 实例化Bean:IOC容器在启动时读取配置文件,解析配置文件中的Bean定义信息,然后将这些信息保存到容器中。容器根据这些信息实例化Bean,生成Bean的实例并存储到容器中。
2. Bean属性注入:容器在实例化Bean之后,会将配置中的属性值注入到Bean中。这个过程叫做依赖注入(Dependency Injection,简称DI)。
3. BeanPostProcessor前置处理器:容器在实例化Bean之后,会检查容器中是否有BeanPostProcessor类型的Bean。如果有,则会依次调用这些Bean的postProcessBeforeInitialization方法,对Bean进行前置处理。
4. 初始化Bean:容器在完成属性注入之后,会调用Bean的初始化方法。如果Bean实现了InitializingBean接口,则会调用其afterPropertiesSet方法。如果在配置文件中指定了初始化方法,则会调用指定的方法。
5. BeanPostProcessor后置处理器:容器在完成初始化之后,会检查容器中是否有BeanPostProcessor类型的Bean。如果有,则会依次调用这些Bean的postProcessAfterInitialization方法,对Bean进行后置处理。
6. Bean销毁:在容器关闭时,会调用Bean的销毁方法。如果Bean实现了DisposableBean接口,则会调用其destroy方法。如果在配置文件中指定了销毁方法,则会调用指定的方法。
总的来说,IOC容器的生命周期包括Bean的实例化、属性注入、前置处理、初始化、后置处理和销毁等阶段。不同的阶段会调用不同的方法,执行不同的操作,最终完成Bean的生命周期管理。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)