Spring中Bean的生命周期

生命周期图

说明:
1)实例化一个bean
2)给bean的属性注入值和bean引用
3)如果bean实现了BeanNameAware接口,Spring就把bean的ID传给setBeanName()方法
4)如果bean实现了BeanFactoryAware接口,Spring就调用setBeanFactory()方法,把BeanFactory传入该方法
5)如果bean实现了ApplicationContextAware接口,Spring就调用setApplicationContext()方法,把ApplicationContext传入该方法
6)如果任意一个bean实现了BeanPostProcessor接口,Spring就会调用postProcessBeforeInitialization()方法
7)如果任意一个bean实现了InitializingBean接口,Spring就会调用afterPropertiesSet()方法。同理,如果bean声明了init-method,这个指定的初始化方法就会被调用。
8)如果任意一个bean实现了BeanPostProcessor接口,Spring就会调用postProcessAfterInitialization()方法
9)此时,bean已经可以被使用了,bean被保留在应用上下文中(application context),直到应用上下文被销毁
10)如果任何一个bean实现了DisposableBean接口,Spring就会调用destroy()方法。同理,如果bean声明了destroy-method,就会调用指定的销毁方法

 

你可能感兴趣的:(SPRING)