spring启动过程之源码跟踪(小结bean的生命周期)--sp
2018-07-23 本文已影响0人
faunjoe
spring in action
image.png1.容器发现bean的定义,初始化bean
2.使用依赖注入的方式,spring根据bean定义,设置bean的所有属性
3.如果bean继承了BeanNameAware接口,则工厂调用setBeanName方法,把bean的Id传值过去
4.如果bean继承了BeanFactoryAware接口,则工厂调用setBeanFactroy()方法,把本身的一个实例传值过去。
5.如果bean关联了一些BeanPostProcessor,则调用这些BeanPostProcessor的postProcessBeforeInitialization()方法。
6.如果bean的init-method方法被设置,则调用bean的初始化方法
7.最后,如果bean关联了一些BeanPostProcessor,则调用这些BeanPostProcessor的postProcessAfterInitialization()方法。
补充:applicationContext中bean的生命周期
image.png