2018-07-06(Spring Bean的作用域)

Spring Bean的作用域,就是配置文件中的“scope”。

在面向对象程序设计中,一般是指对象或变量之间的可见范围。而在Spring容器中则是指其创建的Bean对象相对于其他Bean对象的请求可见范围。

在Spring容器中,一共提供了五种作用域类型:

1、singleton:Spring IoC容器只会创建该Bean定义的唯一实例,单例模式。在Spring IoC 容器中只会存在一个共享的Bean实例,而且所有对于Bean的请求,只要Id与该Bean定义相匹配,则只会返回Bean的同一省。Bean以单实例方式存在。

2、prototype:原型模式,每次通过容器的getBean方法获取prototype定义的Bean时,都将产生一个新的Bean实例【对于有状态的Bean,应该使用prototype;对于无状态的Bean,应该使用singleton】

3、request:对于每次HTTP请求,使用request定义的Bean都将产生一个新实例,即每次HTTP请求将会产生不同的Bean实例。只有在Web应用中使用Spring时,该作用域才有效。

4、session:对于每次HTTP Session,使用session定义的Bean豆浆产生一个新实例。同样只有在Web应用中使用Spring时,该作用域才有效。

5、globalsession:每个全局的HTTP Session,使用session定义的Bean都将产生一个新实例。典型情况下,仅在使用portlet context的时候有效。同样只有在Web应用中使用Spring时,该作用域才有效。


配置文件示例:

在使用第3、4、5种作用域时,需要在web容器中进行一些而外的配置,因为这三种是与web应用环境相关的:

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1.1 spring IoC容器和beans的简介 Spring 框架的最核心基础的功能是IoC(控制反转)容器,...
    simoscode阅读 11,710评论 2 22
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,127评论 19 139
  • 1.1 Spring IoC容器和bean简介 本章介绍了Spring Framework实现的控制反转(IoC)...
    起名真是难阅读 7,417评论 0 8
  • Spring Framework支持五种作用域(其中有三种只能用在基于web的SpringApplicationC...
    先生_吕阅读 6,091评论 5 0
  • 黄飞的战略目标是,成为千万富翁,目标在40岁前实现,战术目标,30岁钱完成20万的积累! 1.开始建立强大的圈子,...
    深蓝2007阅读 2,325评论 0 0

友情链接更多精彩内容