Spring的学习____5.Bean的作用域

Posted xbfchder

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring的学习____5.Bean的作用域相关的知识,希望对你有一定的参考价值。

在Spring中,那些组成应用程序的主体及由SpringIOC容器所管理的对象,被称之为bean。简单地讲,bean就是由IOC容器初始化、装配及管理的对象。

配置文件中定义 Bean 时,我们不但可以配置 Bean 的属性值以及相互之间的依赖关系,还可以定义 Bean 的作用域 。作用域会对 Bean 的生命周期和创建方式产生影响 。

Bean 的作用域类型:

类型说明
singleton 在 Spring 容器中仅存在一个 Bean 实例, Bean 以单例的形式存在,默认值。
prototype 每次从容器中调用 Bean 时,都会返回一个新的实例,即相当于执行 new XxxBean() 的实例化操作。
request 每次 http 请求都会创建一个新的 Bean , 仅用于 WebApplicationContext 环境。request.setAttribute("","")
session 同一个 http Session 共享一个 Bean ,不同的 http Session 使用不同的 Bean,仅用于 WebApplicationContext 环境。session.setAttribute("","")
globalSession 同一个全局 Session 共享一个 bean, 用于 Porlet, 仅用于 WebApplication 环境。application.setAttribute("","")

Spring 以容器的方式,使得我们仅需配置,即可得到天然的单例模式。

在五种作用域中,request、session和globalSession三种作用域仅在web的应用中使用。

以上是关于Spring的学习____5.Bean的作用域的主要内容,如果未能解决你的问题,请参考以下文章

[刘阳Java]_Spring相关配置介绍_第5讲

21天学习python编程_作用域

Spring4-作用域singleton和prototype

Python学习笔记

python作用域

[刘阳Java]_步步窥探JS变量作用域