1.实例化
实例化一个bean,也就是我们说的new
2.ioc依赖注入
按照spring上下文对实例化的Bean进行配置
3.setBeanName实现
如果这个bean实现了BeanNameAware接口,将会调用setBeanName()方法
4.BeanFactoryAware实现
如果这个bean实现了BeanFactoryAware接口,将会调用setBeanFactory()方法,传递的就是Spring工厂本身
5.ApplicationContextAware实现
如果这个bean实现了ApplicationContextAware接口,将会调用setApplicationContext()接口,传入Spring上下文
6.PostProcessBeforeInitialization接口实现初始化预处理
如果这个Bean关联了BeanPostProcessor接口,将会调用PostProcessBeforeInitialization接口
7.init_method
如果bean在Spring配置文件中配置了int-method属性将会自动调用其配置的初始化
8.postProcessAfterInitialization
如果bean关联了beanPostProcessor接口,将会调用postProcessAfterInitialization方法。
9.Destroy过期自动清理阶段
如果这个bean不再需要,会经历清理阶段,如果这个bean实现了Disposable接口,会调用那个其实现的destroy()方法
10.destroy-method自配置清理
最后,如果这个bean配置了destroy-method属性,会自动调用其配置的销毁方法。