1.Spring对bean进行实例化
2.Spring将和bean的引用注入到bean对应属性中
3.如果bean实现了BeanNameAware接口,Spring将bean的ID的传递给setBeanName()的方法
4.如果Bean实现了BeanFactoryAware接口,Spring将调用setBeanFactory()方法,将BeanFactory容器实例传入
5.如果bean实现了ApplicationContextAware接口,Spring将调用setApplicationContext()方法,将bean所在的上下文的引用传进来
6.如果bean实现了BeanPostProcessor接口,Spring将调用它们的postProcesseBeforeInitialization()方法
7.如果bean实现了InitializationBean接口,Spring将调用它们的afterPropertiesSet()方法。类似的,如果bean使用init-method声明初始化,该方法也会被调用
8.如果bean实现了BeanPostProcessor接口,Spring将调用它们的postProcesseAfterInitialization()方法
9.直至此时bean已经准备好了,可以被程序使用,它们将一直驻留在应用上下文,直至上下文被销毁
10.如果实现了DisposableBean接口,Spring将调用它的destory()接口方法。同样如果bean中使用destroy-method声明了销毁方法,该方法也会被被调用。