Bean的作用域:
作用域:作用范围,Bean何时出生?何时死亡?
配置作用域,通过<bean.../>的scope属性来指定,该属性支持如下属性值:
- singleton:单例(默认),所有从Spring容器中取出的总是同一个实例。
什么时候出生? ---> 初始化Spring的容器ApplicationContext的时候就会创建出来
什么时候死 ? 容器不死,它就不死,容器死它就死。
与容器同生共死。
- prototype:不会预初始化。每次通过Spring容器中获取实例,Spring都会new一个新的实例返回。
Spring容器不再管它,只要程序不再需要prototype Bean,它就可能被GC。
生的计划,死的随机。
- request:对应web应用中的request作用域。
对于一次用户请求而言,它是singleton行为。
- session:对应web应用中的session作用域。
对于一次用户会话而言,它是singleton行为。
- global session,仅在使用portlet context的时候才有效。
作用域:作用范围,Bean何时出生?何时死亡?
配置作用域,通过<bean.../>的scope属性来指定,该属性支持如下属性值:
- singleton:单例(默认),所有从Spring容器中取出的总是同一个实例。
什么时候出生? ---> 初始化Spring的容器ApplicationContext的时候就会创建出来
什么时候死 ? 容器不死,它就不死,容器死它就死。
与容器同生共死。
- prototype:不会预初始化。每次通过Spring容器中获取实例,Spring都会new一个新的实例返回。
Spring容器不再管它,只要程序不再需要prototype Bean,它就可能被GC。
生的计划,死的随机。
- request:对应web应用中的request作用域。
对于一次用户请求而言,它是singleton行为。
- session:对应web应用中的session作用域。
对于一次用户会话而言,它是singleton行为。
- global session,仅在使用portlet context的时候才有效。