spring之设立Bean的作用域

spring之设置Bean的作用域

spring之设置Bean的作用域

----------

 

在Spring2.x里,可以在<bean>元素的scope属性里设置Bean的作用域。默认情况下,Spring只为每个在IOC容器里声明的Bean创建一个实例,整个IOC容器范围内都能共享该实例。所有后续的getBean()调用和Bean引用都将返回这个唯一的Bean实例。这个作用域被称为singleton,它是所有Bean的默认作用域。

spring所有有效的Bean作用域:

作用范围 描述
singleton 每个Spring IOC容器中只创建一个Bean实例 
prototype 每次请求时都创建一个新的Bean实例 
request 每个HTTP请求创建一个Bean实例,这个作用域仅在web应用程序的上下文里有效
session 每个HTTP会话创建一个Bean实例,这个作用域仅在web应用程序的上下文里有效
globalSession 为每个全局的HTTP会话创建一个Bean实例,这个作用域仅在门户应用程序的上下文里有效。
在spring1.x里,只有singleton和prototype这两个有效的Bean作用域,它们是由singleton属性指定的(即,singleton="true"或singleton="false"),而不是scope属性。