bean生命周期以及作用域

bean生命周期:

简单点说就是:bean的实例化–>bean的初始化–>bean的使用–>bean的销毁

实例化:也就是new一个对象

属性注入:Spring上下文对实例化的bean进行配置(IOC注入)

设置beanId:如果实现BeanNameAware接口,调用setBeanName()方法设置ID

调用BeanFactoryAware.setBeanFactory(setBeanFactory(BeanFactory):可以用这个方式来获取其它Bean,只需在Spring配置文件中配置一个普通的Bean就可以;

调用ApplicationContextAware.setApplicationContext(ApplicationContext):与BeanFactoryAware.setBeanFactory同样作用,但是ApplicationContextAware是子接口,可以实现更多接口;

实例化之前调用:BeanPostProcessor.postProcessBeforeInitialization(Object obj, String s)方法调用,

实例化:如果在spring配置中还配置了init-method属性,会自动调用该方法;

实质化之后调用:如果关联BeanPostProcessor接口,调用postProcessAfterInitialization(Object obj, String s)方法,

注:前面这里我们就完成bean的实例化;

bean的销毁:当bean不再被使用时,就会调用destroy()方法;

bean销毁调用方法:如果配置了destroy-method方法,会自动调用该方法;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容