springBean生命周期----来自spring实战总结

1、Spring对bean进行实例化

2、Spring将值和bean的引用注入到bean对应的属性中(比如说注入到被依赖的bean的方法中或属性里)

3、如果bean实现了BeanNameAware接口,将会将bean的Id传入setBeanName()方法中

4、如果bean实现了BeanFactoryAware接口,将会设置bean的BeanFactory的引用传入到setBeanFactory()方法中

5、如果bean实现了ApplicationContextAware接口,Spring将调用setApplicationContext()传入bean的上下文的引用

6、如果bean实现了BeanPostProcessor接口,Spring将调用bean的属性初始化之前的预处理方法postProcessBeforeInitialization()方法

7、如果bean实现了InitializingBean接口,Spring将调用afterPropertiesSet()方法。如果bean使用init-method声明了初始化方法,改方法也会被调用

8、如果bean实现了BeanPostProcessor接口,Spring将调用postProcessAfterInitialization

9、此时bean已经准备就绪,可以被应用程序使用了,它将一直驻留在应用上下文中,直到该应用上下文被销毁

10、如果bean实现了DisposableBean接口,Spring将调用他的destroy()方法,如果使用了destroy-method也会调用该方法。

posted @ 2018-08-01 11:30  剑小破  阅读(301)  评论(0编辑  收藏  举报