美文网首页
SpringBoot(24) — @Scope设置bean的作用

SpringBoot(24) — @Scope设置bean的作用

作者: 奔跑的佩恩 | 来源:发表于2021-08-19 15:10 被阅读0次

    前言

    在上篇我们已经讲过了注解@Conditional可用于做IoCBean的属性检测,大家有兴趣的话,可参考SpringBoot(23) — @Conditional检测数据库连接参数
    其实,加载到IoC中的Bean都是有作用域的。而设置Bean的作用域又涉及到注解@Scope的使用。那么,今天就让我们来学习下bean作用域的相关知识吧。

    今天涉及的知识有:

    1. SpringBean的作用域
    2. @Scope设置Bean的作用域
    3. Spring MVC 作用域

    一. Spring中Bean的作用域

    Spring中,Bean的作用域为以下列表:

    作用域类型 使用范围 作用域描述
    singleton 所有Spring应用 默认值,IoC容器只存在单例
    prototype 所有Spring应用 每次从IoC容器中取出都是一个bean,都创建一个新的bean
    session Spring web应用 Http会话
    application Spring web应用 web工程生命周期
    request Spring web应用 web工程单次请求
    globalSession Spring web应用 在一个全局的 httpSession中,一个bean对应一个实例。实践中基本不使用

    这里我们需要注意的是,在Spring中,Bean的默认作用域为单例模式,即为singleton模式。

    二. @Scope 设置 Bean 的作用域

    这里我们新建一个类——TestScope, 用于测试@Scope设置Bean作用域的问题。下面先列出项目架构:

    image.png
    以上截图中AppConfig为项目配置文件。
    下面先给出TestScope代码(标注@Component注解):

    相关文章

      网友评论

          本文标题:SpringBoot(24) — @Scope设置bean的作用

          本文链接:https://www.haomeiwen.com/subject/zczobltx.html