【聚搜云】是上海聚搜信息技术有限公司旗下品牌,坐落于魔都上海,服务于全球、2019年成为阿里云代理商生态合作伙伴。与阿里云代理商、腾讯云、华为云、西部数码、美橙互联、AWS亚马逊云国际站渠道商、聚搜云,长期战略合作的计划!华为云国际站代理商专业的云服务商!
本文由华为云渠道商[聚搜云] [ www.4526.cn]撰写。对于Spring中Bean的作用域,您是否也感到困惑?在本文中,我们将会一一列出Spring中常见的Bean作用域,并进行详尽解释。
1、singleton
singleton 是 Spring Bean 的默认作用域。singleton 代表对于给定的 Spring IoC 容器,只会创建 Bean 的单个实例。每次对该 Bean 进行请求时,都会返回唯一的0 个实例。
2、prototype
prototype 作用域则代表每次向 Spring IoC 容器请求,都会创建一个新的Bean实例。这种方式主要使用在程序需要通过 Bean 容器来进行管理,但每个实例又需要有自己的属性时。
3、request
request级别情况是当一个请求被Servlet接收到之后,每个请求都会有各自独立的处理线程,Spring会将在这个Web请求中使用到的Bean对象存储于request对象中,所以它们都在同一线程下,不会出现互相覆盖的情况。
4、session
session级别作用域主要通过在HttpSession中存储Bean的实例对象,在整个会话过程中都将他作为一个全局变量来使用,使用户与容器之间的交互得到良好支持。
5、global-session
在基于portlet的Web应用中,该作用域仅仅在基于portlet的Web应用中才有意义。global-session代表全局会话,它与表示Servlet API HttpSession相似,只不过它仅仅在基于portlet的上下文中存在。
以上就是Spring中常见的Bean作用域。了解这些常见的作用域对于我们的开发十分重要,能够更深入地理解和运用Spring框架。