spring bean作用域singleton prototype request session globalsession解读

来源:互联网 发布:电影百万杀人游戏 知乎 编辑:程序博客网 时间:2024/05/29 10:58

spring bean作用域有以下5个:

 

singleton:单例模式,当spring创建applicationContext容器的时候,spring会欲初始化所有的该作用域实例,加上lazy-init就可以避免预处理;

 

prototype:原型模式,每次通过getBean获取该bean就会新产生一个实例,创建后spring将不再对其管理;

 

====下面是在web项目下才用到的===

request:搞web的大家都应该明白request的域了吧,就是每次请求都新产生一个实例,和prototype不同就是创建后,接下来的管理,spring依然在监听

 

session:每次会话,同上

 

global session:全局的web域,类似于servlet中的application

注意:当使用request,session,globalsession时需要再web.xml里配置监听器

<listener>

      <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>

</listener>

上述配置只支持servlet2.4+版本的,如果低于该版本,容器不支持listener的规范,就要配置成filter的配置方法

filter的具体配置大家自己查吧,filter对应的calss是:org.springframework.web.filter.RequestContextFilter

如果项目采用了springmvc就不需要上面的web.xml的配置了

 

 

 

 

原创粉丝点击