springbeen生命周期
时间: 2023-07-11 10:56:15 浏览: 88
Spring Bean 的生命周期
Spring Bean 的生命周期可以分为以下阶段:
1. 实例化:容器根据配置信息创建一个 Bean 对象。
2. 设置属性:容器将配置文件中的属性值或者注解中的属性值设置到 Bean 对象中。
3. BeanNameAware 接口的 setBeanName() 方法:容器将 Bean 的 ID 或者名称传递给 Bean 实现的 BeanNameAware 接口的 setBeanName() 方法。
4. BeanFactoryAware 接口的 setBeanFactory() 方法:容器将 BeanFactory 实例传递给 Bean 实现的 BeanFactoryAware 接口的 setBeanFactory() 方法。
5. ApplicationContextAware 接口的 setApplicationContext() 方法:容器将 ApplicationContext 实例传递给 Bean 实现的 ApplicationContextAware 接口的 setApplicationContext() 方法。
6. BeanPostProcessor 接口的 postProcessBeforeInitialization() 方法:容器在初始化 Bean 之前会调用所有实现了 BeanPostProcessor 接口的类的 postProcessBeforeInitialization() 方法。
7. InitializingBean 接口的 afterPropertiesSet() 方法:容器在设置完 Bean 的所有属性后调用实现了 InitializingBean 接口的类的 afterPropertiesSet() 方法,完成 Bean 的初始化工作。
8. init-method 方法:在配置文件中指定的 init-method 方法会被容器调用,完成 Bean 的初始化工作。
9. BeanPostProcessor 接口的 postProcessAfterInitialization() 方法:容器在初始化 Bean 之后会调用所有实现了 BeanPostProcessor 接口的类的 postProcessAfterInitialization() 方法。
10. 使用 Bean:容器将 Bean 对象传递给其他对象使用。
11. DisposableBean 接口的 destroy() 方法:当 ApplicationContext 被关闭时,容器会调用实现了 DisposableBean 接口的类的 destroy() 方法,完成 Bean 的销毁工作。
12. destroy-method 方法:在配置文件中指定的 destroy-method 方法会被容器调用,完成 Bean 的销毁工作。
阅读全文