1. 程式人生 > >springBean生命周期----來自spring實戰總結

springBean生命周期----來自spring實戰總結

mea des 預處理 spring實戰 eth () name cat ble

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也會調用該方法。

springBean生命周期----來自spring實戰總結