spring bean的生命周期
时间: 2023-09-25 20:07:03 浏览: 46
Spring中的Bean生命周期可以分为以下阶段:
1. 实例化:当Spring容器接收到创建Bean的请求时,它会实例化一个Bean。这是通过调用Bean类的构造函数来完成的。
2. 填充属性值:Spring容器会通过Bean的setter方法或直接访问Bean的成员变量,将配置文件中指定的属性注入到Bean中。
3. 后置处理器BeforeInitialization:在初始化Bean之前,Spring会调用所有注册的BeanPostProcessor的beforeInitialization方法,这些后置处理器可以在Bean初始化之前对Bean进行修改。
4. 初始化:当Bean的属性都被设置完毕后,Spring会调用Bean的初始化回调方法(可以是自定义的方法或者是实现了InitializingBean接口的afterPropertiesSet方法)。
5. 后置处理器AfterInitialization:在初始化Bean之后,Spring会调用所有注册的BeanPostProcessor的afterInitialization方法,这些后置处理器可以在Bean初始化之后对Bean进行修改。
6. 使用Bean:此时,Bean已经被完全初始化,可以被应用程序使用。
7. 销毁:当应用程序关闭时,Spring容器会调用Bean的销毁方法(可以是自定义的方法或者是实现了DisposableBean接口的destroy方法)。
总的来说,Spring的Bean生命周期包括Bean的实例化、填充属性值、初始化、使用和销毁。在这个过程中,Spring提供了多种扩展点,可以在这些扩展点上定制Bean的创建和初始化过程。