SpringBean生命周期 详细
时间: 2023-11-29 20:19:23 浏览: 82
Spring Bean的生命周期详细介绍
Spring Bean 生命周期指的是一个 Bean 在容器中从创建、初始化、使用到销毁的整个过程。Spring 容器负责管理 Bean 的整个生命周期,Spring 为 Bean 提供了一些回调方法,开发人员可以在这些方法中添加自己的逻辑。
Spring Bean 的生命周期可以分为以下几个阶段:
1. 实例化阶段
当容器接收到创建 Bean 的请求时,会首先根据配置信息或注解创建 Bean 的实例对象。
2. 属性赋值阶段
容器会将配置文件中或注解中的属性值注入到 Bean 实例对象中,包括基本类型、引用类型、集合类型等。
3. Aware 阶段
容器会调用 Bean 实例对象实现的 Aware 接口方法,让 Bean 对容器或其他资源有感知能力,如 BeanNameAware、BeanFactoryAware、ApplicationContextAware 等。
4. 初始化阶段
在 Bean 实例对象的所有属性被注入后,容器会调用 Bean 实例对象的初始化方法,可以通过实现 InitializingBean 接口或在配置文件中指定 init-method 方法来实现。
5. 使用阶段
Bean 实例对象初始化完成后,可以被容器使用或被其他 Bean 引用。
6. 销毁阶段
当容器关闭或销毁 Bean 时,会调用 Bean 实例对象的销毁方法,可以通过实现 DisposableBean 接口或在配置文件中指定 destroy-method 方法来实现。
在 Spring Bean 生命周期的每个阶段中都有一些回调方法可以供开发人员实现自己的逻辑,如 BeanPostProcessor、BeanFactoryPostProcessor、InstantiationAwareBeanPostProcessor 等。这些回调方法可以在容器初始化时被调用,从而对 Bean 的实例化、属性赋值、初始化和销毁等过程进行干预和处理。
阅读全文