Spring 中 Bean 的作用域(必背)

Spring 中 Bean 的作用域(必背)

Bean 的作用域,这里的作用域并不是程序代码中,变量的作用范围,而是指对象的创建的模式。Spring 5 之后有如下几个方式:

singleton (default)

指的是一个 Spring 容器中仅有一个实例,即改 Bean 是单例存在的。是 Spring 中的默认方式

prototype

和 singleton 想反,每次从容器获取对象,都是获得一个新的实例。

request

这个作用域只有在 web 项目中有效,指的是同一个 http 请求中,获取容器中的实例都是单例的。

session

同样的,只在 web 项目中有效,在每一次 session 的生命周期中,获取的容器中的实例都是单例的。

application

只在 web 项目中有效,在每一次 Servlet 上下文的生命周期中,获取的容器中的实例都是单例的。

websocket

只在 web 项目中有效,在每一次 WebSocket 的生命周期中,获取的容器中的实例都是单例的。

对于某个对象,指定作用域,可以使用 Scope 注解,如下:

@Component
@Scope("prototype")
public class BeanClass {
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Albert陈凯

2018-04-27 读配置文件到静态变量中,加载properties到static变量field

项目的配置文件要写到jar档外面,提供给运维人员更改,基于这个需求,就会有很多的常量需要从外部文件读取进来 JAVA最常见的就是properties文件,提供k...

3599
来自专栏你不就像风一样

[转]Spring基础知识汇总 Java开发必看

Spring框架由Rod Johnson开发,2004年发布了Spring框架的第一版。Spring是一个从实际开发中抽取出来的框架,因此它完成了大量开发中的通...

1333
来自专栏编码前线

在Android项目中调用FFmpeg命令

2232
来自专栏Java技术栈

Java 必看的 Spring 知识汇总!

2213
来自专栏java工会

Java 必看的 Spring 知识汇总!有比这更全的算我输!

2112
来自专栏黑泽君的专栏

day33_Spring学习回顾_01

1、导入jar包:4 + 1 --> beans/core/context/expression + commons-logging

762
来自专栏JackieZheng

学习SpringMVC——说说视图解析器

  各位前排的,后排的,都不要走,咱趁热打铁,就这一股劲我们今天来说说spring mvc的视图解析器(不要抢,都有位子~~~)   相信大家在昨天那篇如何获取...

25410
来自专栏hbbliyong

Spring Boot搭建Web项目常用功能

     首先要弄清楚为什么要包装统一结构结果数据,这是因为当任意的ajax请求超时或者越权操作时,系统能返回统一的错误信息给到前端,前端通过封装统一的ajax...

2742
来自专栏Gaussic

Spring MVC绑定 List 对象参数 原

       最近做的一个小小的项目碰上了如何用 post 传递一整个 list 的问题,在解决这个问题的同时,也顺带升级一下 Spring 的版本,并精简一下...

1841
来自专栏程序猿DD

【译】Spring 官方教程:创建批处理服务

原文:Creating a Batch Service 译者:Mr.lzc 校对:lexburner 本指南将引导你完成创建基本的批处理驱动解决方案的过程。 你...

5287

扫码关注云+社区

领取腾讯云代金券