好记性不如烂笔头85-spring3学习(6)-BeanFactory 中bean的生命周期
2015-03-19 08:28
344 查看
如果使用BeanFactory来生成、管理Bean, 一个Bean从建立到销毁,会历经几个执行阶段。
我个人理解一般的bean的生命周期主要包括:建立,初始化,使用阶段,销毁四个核心阶段。
1、@Bean的建立
由BeanFactory读取Bean定义文件,并生成各个Bean实例。
2、初始化@属性注入
执行相关的Bean属性依赖注入
@BeanNameAware的setBeanName()
org.springframework.beans.factory.BeanNameAware
@BeanFactoryAware的setBeanFactory()
org.springFramework.beans.factory.BeanFactoryAware
@BeanPostProcessors的processBeforeInitialization()
org.springFramework.beans.factory.config.BeanPostProcessors
@InitializiongBean的afterPropertiesSet()
org.springframework.beans.factory.InitializingBean
@Bean定义文件中定义init-method
use “init-methd” to set method name e.g:
当代码运行到这个阶段的时候,就是执行initBean方法。
@BeanPostProcessors的processaAfterInitialization()
如果有任何的BeanPostProcessors实例与Bean实例关联,则执行BeanPostProcessor实例的processaAfterInitialization()方法。
4、销毁 @DisposableBean的destroy()
容器关闭 org.springframework.beans.factory.DisposableBean
@Bean定义文件中定义destroy-method
我个人理解一般的bean的生命周期主要包括:建立,初始化,使用阶段,销毁四个核心阶段。
1、@Bean的建立
由BeanFactory读取Bean定义文件,并生成各个Bean实例。
2、初始化@属性注入
执行相关的Bean属性依赖注入
@BeanNameAware的setBeanName()
org.springframework.beans.factory.BeanNameAware
@BeanFactoryAware的setBeanFactory()
org.springFramework.beans.factory.BeanFactoryAware
@BeanPostProcessors的processBeforeInitialization()
org.springFramework.beans.factory.config.BeanPostProcessors
@InitializiongBean的afterPropertiesSet()
org.springframework.beans.factory.InitializingBean
@Bean定义文件中定义init-method
use “init-methd” to set method name e.g:
[code]<bean id="helloBean" class="org.bearfly.bean.HelloBean" init-method="initBean">
当代码运行到这个阶段的时候,就是执行initBean方法。
@BeanPostProcessors的processaAfterInitialization()
如果有任何的BeanPostProcessors实例与Bean实例关联,则执行BeanPostProcessor实例的processaAfterInitialization()方法。
4、销毁 @DisposableBean的destroy()
容器关闭 org.springframework.beans.factory.DisposableBean
@Bean定义文件中定义destroy-method
[code]<bean id="helloBean" class="org.bearfly.bean.HelloBean" destroy-method="destroyBean">
相关文章推荐
- 好记性不如烂笔头85-spring3学习(6)-BeanFactory 于bean生命周期
- 好记性不如烂笔头86-spring3学习(7)-ApplicationContext中bean的生命周期
- 好记性不如烂笔头86-spring3学习(7)-ApplicationContext中bean的生命周期
- 好记性不如烂笔头82-spring3学习(3)-spring的Resource使用和传统方法的对比
- 好记性不如烂笔头89-spring3学习(10)-spring3常用schema(持续整理)
- 好记性不如烂笔头90-spring3学习(11)-小技巧汇总
- 好记性不如烂笔头98-spring3学习(19)-实施spring AOP事务的方法的漏网之鱼
- 好记性不如烂笔头83-spring3学习(4)-spring的BeanFactory(IoC容器)
- 好记性不如烂笔头88-spring3学习(9)-schema的配置的解读和说明
- 好记性不如烂笔头96-spring3学习(17)-利用debug观察事务传播
- 好记性不如烂笔头97-spring3学习(18)-多线程模式下的spring事务
- 好记性不如烂笔头88-spring3学习(9)-schema的配置的解读和说明
- 好记性不如烂笔头93-spring3学习(14)-spring事务传播机制的7剑客
- 好记性不如烂笔头
- 好记性不如烂笔头——关于精确度、召回率、F值、准确率
- 好记性不如烂笔头
- 好记性不如烂笔头7-JAVA生成EXCEL文件
- 好记性不如烂笔头18-java对Oracle的CLOB字段的操作
- 好记性不如烂笔头41-javaWeb应用中ServletRequest域的监听(5)
- 好记性不如烂笔头(一)