springbean的生命周期面试
时间: 2023-10-11 21:08:54 浏览: 65
Spring的bean生命周期
Spring Bean 的生命周期可以分为以下几个阶段:
1. 实例化(Instantiation):Spring 容器通过构造函数或工厂方法创建 Bean 的实例。
2. 属性赋值(Population of Properties):Spring 容器将依赖注入(Dependency Injection)的方式设置 Bean 的属性和依赖关系。
3. 初始化(Initialization):如果 Bean 实现了 InitializingBean 接口,Spring 容器会调用其 afterPropertiesSet() 方法进行初始化,同时还可以通过配置 init-method 进行自定义初始化操作。
4. 使用(In Use):Bean 可以被应用程序使用了,执行业务逻辑。
5. 销毁(Destruction):如果 Bean 实现了 DisposableBean 接口,Spring 容器会在容器关闭时调用其 destroy() 方法进行销毁,同时还可以通过配置 destroy-method 进行自定义销毁操作。
需要注意的是,Bean 的实例化和属性赋值是在容器启动阶段完成的,而初始化、使用和销毁是在容器运行过程中发生的。
另外,还可以通过使用 @PostConstruct 和 @PreDestroy 注解来定义初始化和销毁方法,这比实现 InitializingBean 和 DisposableBean 接口更为灵活。
阅读全文