Spring IOC 容器可以管理 Bean 的生命周期,,Spring 允许在 Bean 生命周期的特定点执行定制的任务。
Bean 的生命周期
1. 通过构造器或工厂方法创建 Bean 实例
2. 为 Bean 的属性设置值和对其他 Bean 的引用
3. 调用 Bean 的初始化方法
4. Bean 可以使用了
5. 当容器关闭时,调用 Bean 的销毁方法
在 Bean 的声明里设置 init-method 和 destroy-method 属性,为 Bean 指定初始化和销毁方法。
Bean 后置处理器
Bean 后置处理器允许在调用初始化方法前后对 Bean 进行额外的处理。
Bean 后置处理器对 IOC 容器里的所有 Bean 实例逐一处理,而非单一实例。其典型应用是:检查 Bean 属性的正确性或根据特定的标准更改 Bean 的属性。
对Bean 后置处理器而言。需要实现org.springframework.beans.factory.config.BeanPostProcessor接口。在初始化方法被调用前后,Spring 将把每个 Bean 实例分别传递给上述接口的以下两个方法:
Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException
Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException
添加 Bean 后置处理器后 Bean 的生命周期
1. 通过构造器或工厂方法创建 Bean 实例
2. 为 Bean 的属性设置值和对其他 Bean 的引用
3. 将 Bean 实例传递给 Bean 后置处理器的 postProcessBeforeInitialization 方法
4. 调用 Bean 的初始化方法
5. 将 Bean 实例传递给 Bean 后置处理器的 postProcessAfterInitialization方法
6. Bean 可以使用了
7. 当容器关闭时, 调用 Bean 的销毁方法
相关推荐
spring bean 的生命周期,把运行结果的日志,用sublime打开对比查看,你会有比较清晰的认识
Spring bean生命周期demo
SpringBean的生命周期.mdj
Springbean生命周期
介绍了Spring的Bean周期,容器周期,工厂周期,运行代码后可以看到运行结果
此资源是我的博客bean的生命周期的测试代码,只有源代码,没有相关库文件,环境是spring4.2 ,
这个工程主要实现了: Spring中Bean的生命周期 applicationcontext的应用(实现国际化,事件的传递)
Spring Bean 的生命周期在整个 Spring 中占有很重要的位置,掌握这些可以加深对 Spring 的理解。这篇文章主要介绍了Spring Bean 生命周期,需要的朋友可以参考下
主要给大家介绍了Spring中Bean的生命周期和作用域及实现方式的相关资料,文中介绍的非常详细,对大家具有一定的参考价值,需要的朋友们下面来一起看看吧。
Spring 容器后处理器
四份资料介绍Spring Bean 的生命周期,从认识,熟悉,深究,记忆Spring Bean。希望这份资料能帮助你!
一般情况下,我们只是关心如何正确地将Bean装配到容器中,并不关心Ioc容器是如何装配和销毁Bean的过程。但是恰恰有时候,我们需要自定义初始化或销毁Bean的过程,以满足一些“特殊的”需求。比如,数据源在关闭的...
Spring Bean 生命周期之“我从哪里来?”
本篇文章主要介绍了spring之Bean的生命周期详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
Spring的生命周期是指实例化Bean时所经历的一系列阶段,即通过getBean()获取bean对象及设置对象属性时,Spring框架做了哪些事。Bean的生命周期从Spring容器实例化Bean到销毁Bean。 本文分别对 BeanFactory 和 ...
SPRING BOOT介绍点击lastest release就可进入到下载页,然后下载对应的版本从disk安装即可。点击lastest release就可进入到下载页,然后下载对应的版本从disk安装即可。点击lastest release就可进入到下载页,然后...
NULL 博文链接:https://cici9898-007.iteye.com/blog/1407695
* * * 上图中,Bean的生命周期的整个执行过程描述如下。 (1)根据配置情况调用Bean构造方法或工厂方法实例化Bean。 (2)利用依赖注入来完成Bean中所有属性值的配置注入。 (3)如果Bean实现了BeanNameAware接口,...
Spring管理的Bean的生命周期