zoukankan      html  css  js  c++  java
  • Spring框架参考手册(4.2.6版本)翻译——第三部分 核心技术 6.5 Bean的作用域

    6.1 Bean的作用域

    当你创建一个Bean的定义,你就为这个Bean定义的类创建了一个配方。Bean的定义是一个配方的想法是重要的,因为这意味着,你可以通过这个配方创建许多对象实例。

    您不仅可以控制要插入到从特定bean定义创建的对象的各种依赖项和配置值,还可以控制从特定bean定义创建的对象的作用域。这种方式是强大且灵活的,您可以通过配置选择创建的对象的作用域,而不必在Java类的级别设置对象的作用域。可以将Bean定义为多个作用域中的一个:开箱即用,Spring Framework支持五个作用域,其中三个作用域仅在您使用Web的ApplicationContext时才有用。

    开箱即用的作用域有下面几个,你也可以创建自定义作用域。

    表6.3 Bean的作用域

    作用域

    描述

    singleton

    (默认)Bean定义的作用域为每个Spring IoC容器只拥有一个单一的对象

    prototype

    Bean定义的作用域为任意数量的对象实例

    request

    Bean定义的作用域为HTTP请求的生命周期,那就是说,每个HTTP请求拥有自己的Bean的实例。仅在Spring Web的ApplicationContext上下文生效。

    session

    Bean定义的作用域为HTTP Session的生命周期。仅在Spring Web的ApplicationContext上下文生效。

    global session

    Bean定义的作用域为HTTP Session的生命周期。一般仅在Portlet上下文使用。仅在Spring Web的ApplicationContext上下文生效。

    application

    Bean定义的作用域为ServletContext的生命周期。仅在Spring Web的ApplicationContext上下文生效。

    注意:从Spring 3.0开始,线程范围可用,但默认情况下未注册。 有关更多信息,请参阅SimpleThreadScope的文档。 有关如何注册此范围或任何其他自定义范围的说明,请参阅“使用自定义范围”一节。

  • 相关阅读:
    面试题
    网络编程
    python_控制台输出带颜色的文字方法
    httpie 101
    JSON Web Signature 规范解析
    Kong 系列 -- Kong 101
    关于过渡机制的一点理解
    XAML概览 1(译自JeremyBytes.com)
    awk与sed简明教程
    Connection failed: NT_STATUS_ACCOUNT_RESTRICTION
  • 原文地址:https://www.cnblogs.com/springmorning/p/10345512.html
Copyright © 2011-2022 走看看