bean的生命周期是什么
时间: 2024-03-31 17:28:01 浏览: 56
Bean的生命周期介绍
Bean的生命周期包括四个阶段:
1. 实例化(Instantiation):在BeanFactory容器中,当一个请求尚未初始化的Bean时,或者在初始化Bean时需要注入另一个尚未初始化的依赖时,容器会调用createBean方法进行实例化。在ApplicationContext容器中,当容器启动完成后,会根据BeanDefinition的信息实例化所有的Bean。
2. 属性赋值(Populate):在实例化后,对象被封装在BeanWrapper中,并根据BeanDefinition的信息以及BeanWrapper提供的设置属性的接口进行属性设置和依赖注入。这一阶段会完成对Bean的属性的赋值。
3. 初始化(Initialization):在属性赋值后,Spring会检测该对象是否实现了Aware接口,并完成其对应的处理,比如BeanNameAware、BeanFactoryAware等。接着,Spring会调用初始化方法(如果有的话),这个方法可以是通过实现InitializingBean接口定义的afterPropertiesSet()方法,也可以是在Bean的配置中通过init-method属性指定的自定义初始化方法。在这个阶段,Bean可以进行一些自定义的初始化逻辑。
4. 销毁(Destruction):在容器关闭或者Bean被从容器中移除时,会调用Bean的销毁方法。和初始化阶段类似,Bean的销毁方法可以是通过实现DisposableBean接口定义的destroy()方法,也可以是在Bean的配置中通过destroy-method属性指定的自定义销毁方法。
以上是Spring Bean的基本生命周期,每个阶段都可以进行一些自定义处理。
阅读全文