黑马程序员技术交流社区

标题: SpringBean生命周期 [打印本页]

作者: dfasgfe    时间: 2014-2-21 15:59
标题: SpringBean生命周期
(1)容器寻找Bean的定义信息并且将其实例化。
(2)执行依赖注入,Spring按照Bean定义信息注入Bean的所有属性。
(3)如果Bean实现了BeanNameAware接口,工厂调用Bean的setBeanName()方法,并传递Bean的ID作为参数。
(4)如果Bean实现了BeanFactoryAware接口,工厂调用setBeanFactory()方法传入工厂自身。
(5)如果BeanPostProcessor和Bean关联,那么它们的postProcessBeforeInitialzation()方法将被调用。
(6)如果Bean实现了InitializingBean接口,afterPropertiesSet()方法会被调用;
如果Bean指定了init-method属性,init-method属性指定的方法将被调用。
如果InitializingBean和init-method属性同时出现,前者先于后者执行。
(7)如果有BeanPsotProcessor和Bean关联,那么它们的postProcessAfterInitialization()方法将被调用。
(8)最后当关闭应用时,Bean Factory会调用destroySingletons()方法,这时,会执行:
如果Bean实现了DisposableBean接口,destory()方法会被调用;
如果指定了destroy-method属性,destroy-method属性指定的方法将被调用。
如果DisposableBean和destroy-method属性同时出现,前者先于后者执行。

作者: 俞帅明    时间: 2014-2-21 17:29
谢谢楼主分享,楼主辛苦了!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2