告诉我spring IOC中bean的生命周期
时间: 2024-06-18 17:03:15 浏览: 187
在 Spring IOC 容器中,Bean 的生命周期可以分为以下 8 个阶段:
1. 实例化 Bean:Spring IOC 容器会根据配置文件中的配置信息实例化 Bean。
2. 设置对象属性:在 Bean 实例化之后,Spring IOC 容器会利用 Bean 的属性 Setter 方法为 Bean 设置属性值。
3. 检查 Aware 相关接口:Spring IOC 容器会检测 Bean 是否实现了 BeanNameAware、BeanFactoryAware 或者其他的 Aware 相关接口,并将相关的实例注入到 Bean 中。
4. BeanPostProcessor 前置处理器的 before 方法:Spring IOC 容器会调用所有注册的 BeanPostProcessor 实现类的 before 方法。
5. 初始化方法:如果 Bean 实现了 InitializingBean 接口,则 Spring IOC 容器会调用 afterPropertiesSet 方法。如果 Bean 配置了 init-method,则 Spring IOC 容器会调用指定的初始化方法。
6. BeanPostProcessor 后置处理器的 after 方法:Spring IOC 容器会调用所有注册的 BeanPostProcessor 实现类的 after 方法。
7. 使用 Bean:Bean 实例化、属性填充和初始化完成后,就可以使用了。
8. 销毁方法:如果 Bean 实现了 DisposableBean 接口,则 Spring IOC 容器会在销毁 Bean 之前调用 destroy 方法。如果 Bean 配置了 destroy-method,则 Spring IOC 容器会调用指定的销毁方法。
阅读全文