请列出Spring bean 的生命周期
时间: 2024-05-21 18:14:27 浏览: 66
Spring bean 的生命周期包括以下阶段:
1. 实例化(Instantiation):Spring 容器根据 Bean 的定义创建一个 Bean 实例。
2. 属性赋值(Population):Spring 容器将配置文件或注解中的属性值注入到 Bean 实例中。
3. BeanPostProcessor 前置处理(PreInitialization):在 Bean 对象初始化之前,Spring 容器会先调用所有实现了BeanPostProcessor接口的类的postProcessBeforeInitialization方法进行前置处理。
4. 初始化(Initialization):Spring 容器对 Bean 进行初始化,它可以自定义初始化方法,也可以使用默认的初始化方法。在初始化方法执行之前,Spring 容器会调用所有实现了BeanPostProcessor接口的类的postProcessAfterInitialization方法进行后置处理。
5. 使用(In use):Bean 实例可以被其他对象引用和使用。
6. BeanPostProcessor 后置处理(Destruction):在 Bean 对象销毁之前,Spring 容器会调用所有实现了BeanPostProcessor接口的类的postProcessBeforeDestruction方法进行后置处理。
7. 销毁(Disposal):Spring 容器销毁 Bean 实例,它可以自定义销毁方法,也可以使用默认的销毁方法。
总体来说,Spring Bean 的生命周期可以分为实例化、属性赋值、初始化、使用和销毁等阶段。在这些阶段中,Spring 容器会调用一些特定的方法来完成一些特定的任务,比如初始化 Bean、销毁 Bean、注入属性等等。我们可以通过实现 BeanPostProcessor 接口来自定义 Bean 的前置处理和后置处理。
阅读全文