解释下 Spring 支持的几种 bean 的作用域?

简介: 解释下 Spring 支持的几种 bean 的作用域?

Spring 支持五种 bean 的作用域:

(1)singleton:单例模式,spring 的默认作用域,每个容器中只有一个 bean 的实例,随着容器的销毁而销毁。(因为整个容器只有一个对象,并存在容器中,如果对象被随意销毁,再想获取对象就获取不到了,所以正常情况下单例对象不会销毁,随着容器的销毁而销毁)

(2)prototype:多例模式,每次从容器获取时都会创建一个新的 bean 对象。使用 Java 垃圾回收机制销毁对象。(每次获取对象是都会创建新的对象,并且不存在容器中,不然容器中要存很多这种对象。所以多例对象也不由 Spring 来销毁,直接使用 Java 的垃圾回收机制销毁对象,什么时候没用了就销毁对象)

(3)request:每次请求创建一个单例对象,只在 web 环境有效,当处理请求结束,bean 对象将被销毁。

(4)session:每次会话创建一个单例对象,只在 web 环境有效,当 HTTP Session 最终被废弃的时候,bean 对象也会被销毁。

(5)global-session:一次集群环境的会话创建一个对象,只在 web 环境有效,当集群环境下的 session 销毁时,bean 对象也会被销毁。

相关文章
|
3天前
|
Java Spring 缓存
Spring Bean循环依赖详解
【6月更文挑战第2天】
10 2
|
7天前
|
存储 Java 数据库
Spring的使用-Bean对象的储存和获取/Bea对象的作用域与生命周期
Spring的使用-Bean对象的储存和获取/Bea对象的作用域与生命周期
|
12天前
|
Java Spring 容器
Spring注解开发,bean的作用范围及生命周期、Spring注解开发依赖注入
Spring注解开发,bean的作用范围及生命周期、Spring注解开发依赖注入
25 1
Spring注解开发,bean的作用范围及生命周期、Spring注解开发依赖注入
|
12天前
|
Java 容器 Spring
Spring的加载配置文件、容器和获取bean的方式
Spring的加载配置文件、容器和获取bean的方式
23 3
Spring的加载配置文件、容器和获取bean的方式
|
12天前
|
Java Spring 容器
Spring核心概念、IoC和DI的认识、Spring中bean的配置及实例化、bean的生命周期
Spring核心概念、IoC和DI的认识、Spring中bean的配置及实例化、bean的生命周期
33 0
|
13天前
|
XML Java 数据格式
Spring框架学习 -- Bean的生命周期和作用域
Spring框架学习 -- Bean的生命周期和作用域
17 2
|
13天前
|
存储 XML Java
Spring框架学习 -- 读取和存储Bean对象
Spring框架学习 -- 读取和存储Bean对象
14 0
Spring框架学习 -- 读取和存储Bean对象
|
21天前
|
XML 前端开发 Java
【JavaEE】深入了解Spring中Bean的可见范围(作用域)以及前世今生(生命周期)
【JavaEE】深入了解Spring中Bean的可见范围(作用域)以及前世今生(生命周期)
18 0
|
21天前
|
Java 应用服务中间件 Maven
SpringBoot 项目瘦身指南
SpringBoot 项目瘦身指南
71 0
|
21天前
|
缓存 安全 Java
Spring Boot 面试题及答案整理,最新面试题
Spring Boot 面试题及答案整理,最新面试题
156 0