目录
一、Bean的作用域
在spring中通过配置bean标签的值来指定bean的作用域
1、singleton (默认) :在ioc容器中的bean对象始终为单例
2、prototype :在ioc容器中的bean对象可以有多个实例
在WebApplicationContext环境下还有两个作用域
1、request:在一个请求范围内有效
2、session:在一个会话范围内有效
二、Bean的生命周期
1、bean实例化(调用无参构造)
2、依赖注入
3、前置操作处理(postProcessBeforeInitialization方法)
4、初始化 (通过bean的init-method指定初始化方法)
5、后置操作处理(postProcessAfterInitialization方法)
6、销毁(ioc容器关闭时销毁,通过bean的destroy-method指定销毁方法)
注:1、当bean为单例时,前四步是在获取ioc容器时获取的,当为多例时,前四步是在获取bean时获取的,并且销毁方法不受ioc管理
2、前置操作和后置操作是利用实现接口BeanPostProcessor配置到ioc容器中的,并且后置处理操作对每一个bean都会执行,不分单例多例