Spring中Bean的作用域

原创 2018年04月17日 09:46:06

        在默认情况下,Spring应用上下文中所有bean都是作为单例的形式创建的.大所属情况下,单例bean是很理想的方案.但有时候,单例bean不是什么很好的主意.

        Spring定义了多种作用域,可以基于这些作用域创建bean,包括:

        1.单例(Singleton):在整个应用中,只创建bean的一个实例

        2.原型(Prototype):每次注入或者通过Spring应用上下文获取的时候,都会创建一个新的bean实例.

        3.会话(Session):在Web应用中,为每个会话创建一个bean

        4.请求(Request):在Web应用中,为每个请求创建一个bean实例.

        例如,要将bean的作用域声明为原型:

@Component
@Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)
public class BeatlesCD implements CompactDisc {
    @Override
    public void play() {
        System.out.println("Playing Beatles");
    }
}

        当然也可以使用@Scope("prototype"),但是使用SCOPE_PROTOTYPE常量更加安全并且不易出错.

        另外两种暂时不深入说明.之后再详细说明.

Spring中Bean的五个作用域

当通过Spring容器创建一个Bean实例时,不仅可以完成Bean实例的实例化,还可以为Bean指定特定的作用域。Spring支持如下5种作用域: singleton:单例模式,在整个S...
  • u011468990
  • u011468990
  • 2015-11-23 15:35:25
  • 22552

Spring核心技术(五)——Spring中Bean的作用域

前文概述了Spring的容器,Bean,以及依赖的一些信息,本文将描述一下Bean的作用域Bean的作用域当开发者定义Bean的时候,同时也会定义了具体如何创建Bean实例的步骤。这些步骤是很重要的,...
  • EthanWhite
  • EthanWhite
  • 2016-05-22 18:23:58
  • 14534

spring 中bean的作用域和生命周期

spring 中bean的作用域和生命周期
  • do_bset_yourself
  • do_bset_yourself
  • 2016-04-17 16:50:18
  • 2940

Spring中bean的作用域与生命周期

在Spring中,那些组成应用程序的主体及由Spring IoC容器所管理的对象,被称之为bean。简单地讲,bean就是由IoC容器初始化、装配及管理的对象,除此之外,bean就与应用程序中的其他对...
  • fuzhongmin05
  • fuzhongmin05
  • 2017-06-17 22:29:18
  • 1764

Spring 配置使用 - Bean 作用域

基本概念Scope,也称作用域,在 Spring IoC 容器是指其创建的 Bean 对象相对于其他 Bean 对象的请求可见范围。在 Spring IoC 容器中具有以下几种作用域:基本作用域(re...
  • u012420654
  • u012420654
  • 2016-10-08 21:59:38
  • 2821

Spring中Bean的作用域有哪些

 在Spring的早期版本中,仅有两个作用域:singleton和prototype 1、singleton表示Bean以单例的方式存在; 2、prototype表示每次从容器中调用Bean...
  • HelloCqk1
  • HelloCqk1
  • 2016-04-13 12:23:13
  • 762

详解Spring中bean的作用域

 如何使用spring的作用域:bean id="role" class="spring.chapter2.maryGame.Role" scope="singleton"/>这里的scope就是用来...
  • ProvidenceZY
  • ProvidenceZY
  • 2007-11-11 10:25:00
  • 9908

Spring学习(十五)Spring Bean 的5种作用域介绍

Spring Bean 中所说的作用域,在配置文件中即是“scope” 在面向对象程序设计中作用域一般指对象或变量之间的可见范围。 而在Spring容器中是指其创建的Bean对象相对于其他Bean...
  • icarus_wang
  • icarus_wang
  • 2016-06-04 23:32:25
  • 4070

Spring Bean的作用域之间有什么区别?

Spring容器中的bean可以分为5个范围。所有范围的名称都是自说明的,但是为了避免混淆,还是让我们来解释一下: 1.       singleton:这种bean范围是默认的,这种范围确保不管接...
  • miachen520
  • miachen520
  • 2016-07-31 10:01:57
  • 1516

Spring Bean装配之Bean的定义及作用域的注解实现

1.概述: 2.Class扫描以及组件管理: 3.Bean的自动扫描机制:只要是该注解下面的类使用了相关的注解,就相当于为该类在上下文中创建了bean 4.如何使用过滤器自定义扫描其中使用到...
  • qq_28893679
  • qq_28893679
  • 2016-12-03 09:13:53
  • 936
收藏助手
不良信息举报
您举报文章:Spring中Bean的作用域
举报原因:
原因补充:

(最多只允许输入30个字)