这里我们只是说一下spring容器管理的Bean的生命周期,spring容器是通过依赖注入来实现对Bean的管理的;
那我们来看看它是如何进行对象管理的:
1)实例化Bean对象
容器寻找bean的定义信息,并将其实例化;
2)依赖注入(设置属性)
通过spring的上下文,对实例化的bean进行配置,也就是依赖注入;将BeanDefinition转换为BeanWrapper;
3)实现BeanNameAware接口
如果实现调用此接口,那么工厂调用setBeanName方法传递bean的id;这样bean就可以通过id获取自己在工厂中的名字了;
4)实现BeanFactoryAware接口
如果调用此接口,工厂调用setBeanFactory方法传入工厂自身;目的是让bean获取配置他们的factory的引用;
5)实现ApplicationContextAware接口
如果实现此接口则要实现setApplicationContext方法,将会被注入applicationContext的实例;
6)实现BeanPostProcessor接口
对bean进行预初始化,它是针对全部Bean的
7)InitializingBean接口
通过afterPropertiesSet方法初始化bean
8)自定义初始化方法
9)BeanProstProcessor接口
对对象进行后初始化,它是针对全部bean的;
10)对象的生存期
11)disposableBean接口
调用display方法销毁对象