bean生命周期的11步
时间: 2023-07-17 22:04:53 浏览: 54
Bean的生命周期通常包括以下11个步骤:
1. 创建Bean实例:当容器启动时,根据配置信息或注解,实例化Bean对象。
2. 设置Bean的属性:将配置文件中或通过注解指定的属性值注入到Bean实例中。
3. 调用Bean的自定义初始化方法:如果Bean类中定义了自定义的初始化方法(如使用 `@PostConstruct` 注解),在依赖注入完成后,容器将调用该方法进行自定义的初始化操作。
4. Bean后置处理器的前置处理:如果容器中注册了Bean后置处理器(BeanPostProcessor),在初始化之前,将调用其前置处理方法。
5. 调用Bean的初始化方法:如果Bean类实现了 `InitializingBean` 接口,容器将在依赖注入和自定义初始化方法之后,调用其 `afterPropertiesSet()` 方法进行进一步的初始化操作。
6. Bean后置处理器的后置处理:如果容器中注册了Bean后置处理器(BeanPostProcessor),在初始化之后,将调用其后置处理方法。
7. 使用Bean:此时Bean实例已经完全初始化,可以在其他组件中使用它。
8. 销毁前处理:如果Bean类实现了 `DisposableBean` 接口,在容器关闭时,会调用其 `destroy()` 方法进行销毁前的处理。
9. Bean后置处理器的销毁前处理:如果容器中注册了Bean后置处理器(BeanPostProcessor),在销毁之前,将调用其销毁前处理方法。
10. 销毁Bean:在容器关闭时,会销毁Bean实例。
11. Bean后置处理器的销毁后处理:如果容器中注册了Bean后置处理器(BeanPostProcessor),在销毁之后,将调用其销毁后处理方法。
这些步骤构成了Bean的完整生命周期,可以在其中的不同阶段进行相应的操作和处理。