首页 > 其他分享 >Spring 开发必备:深入解析 Spring Bean 的六大作用域

Spring 开发必备:深入解析 Spring Bean 的六大作用域

时间:2025-01-18 09:00:12浏览次数:3  
标签:WebSocket 作用域 Spring 助手 会话 Bean 实例

Spring Bean一共有六种作用域,我们可以将它们比作是不同场景下的“服务助手”。

1. 单例作用域(Singleton):

• 就像餐厅里只有一个“领班助手”,无论顾客多少次呼唤,来的都是同一位助手

• 在Spring容器中,单例作用域的Bean也只会有一个实例,无论在哪里获取,都是同一个对象。

• 适用于无状态的Bean,如数据库连接池等。

2. 原型作用域(Prototype):

• 就像餐厅里每次顾客呼唤都会来一位“新服务员助手”

• 每次从Spring容器中获取原型作用域的Bean时,都会创建一个新的实例。

• 适用于有状态的Bean,如用户会话信息等。

3. 请求作用域(Request):

• 就像餐厅里每次有新的顾客点单,都会有一位“点单助手”来服务。

• 在Web应用中,每次HTTP请求都会创建一个新的Bean实例,该实例仅在当前请求内有效。

• 适用于与当前HTTP请求紧密相关的Bean。

4. 会话作用域(Session):

• 就像餐厅里每位顾客都有一个专属的服务员助手”,从顾客进门到离开,都由这位助手服务。

• 在Web应用中,每个HTTP会话都会有一个独立的Bean实例,该实例在当前会话内有效。

• 适用于与当前浏览器会话紧密相关的Bean,如用户购物车等。

5. 全局作用域(Application):

• 就像餐厅里有一个“大堂经理助手”,负责整个餐厅的协调和服务

• 在Web应用中,全局作用域的Bean在整个Web应用范围内共享,即应用的所有会话和请求之间共享。

• 适用于全局配置、共享服务或全应用级别的数据。

6. WebSocket作用域:

• 就像餐厅里有一个“外卖助手”,专门负责处理外卖订单。

• 在WebSocket应用中,每次WebSocket会话都会有一个独立的Bean实例,该实例在当前WebSocket会话内有效。

• 适用于WebSocket的每次会话中需要保存的信息。

这六种作用域各有特点,开发者可以根据实际需求选择合适的作用域来管理Bean的生命周期和可见性范围。

标签:WebSocket,作用域,Spring,助手,会话,Bean,实例
From: https://blog.csdn.net/qq_44378083/article/details/145212983

相关文章

  • springboot毕设 基于Springboot的养老院管理系统 程序+论文
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着社会的老龄化进程加速,养老院作为老年人生活照顾和健康管理的重要场所,其管理和运营效率直接关系到老年人的生活质量与幸福感。近年来,我国养老院数......
  • springboot毕设 基于springboot的校园招聘管理系统 程序+论文
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着高等教育的普及和就业市场的日益竞争激烈,校园招聘已成为连接企业与学生的重要桥梁。然而,传统的校园招聘方式往往面临信息不对称、流程繁琐、效率......
  • Spring Boot 启动流程
    1.引导类(BootstrapClass)启动一个SpringBoot应用程序的第一步是编写引导类,该类包含了一个main方法,负责启动整个应用程序。例如:@SpringBootApplicationpublicclassApplication{publicstaticvoidmain(String[]args){SpringApplication.run(Applic......
  • springboot小程序 uniapp基于Vue宏飞数码好物分享系统实现
    文章目录项目和技术介绍具体实现截图uniapp+hbuilderx错误处理和异常处理小程序框架以及目录结构介绍系统安全性java类核心代码部分展示软件测试数据完整性源码获取/详细视频演示项目和技术介绍微信开发者工具/hbuiderx后端语言支持以下技术栈:1java(SSM/springbo......
  • springboot“玩转巴中”旅游小程序设计与实现
    文章目录项目和技术介绍具体实现截图uniapp+hbuilderx错误处理和异常处理小程序框架以及目录结构介绍系统安全性java类核心代码部分展示软件测试数据完整性源码获取/详细视频演示项目和技术介绍微信开发者工具/hbuiderx后端语言支持以下技术栈:1java(SSM/springbo......
  • springboot高校学生饮食推荐系统(11175)
     有需要的同学,源代码和配套文档领取,加文章最下方的名片哦一、项目演示项目演示视频二、资料介绍完整源代码(前后端源代码+SQL脚本)配套文档(LW+PPT+开题报告)远程调试控屏包运行三、技术介绍Java语言SSM框架SpringBoot框架Vue框架JSP页面Mysql数据库IDEA/Eclipse开发......
  • springboot基于协同过滤算法的体育商品推荐系统(11211)
     有需要的同学,源代码和配套文档领取,加文章最下方的名片哦一、项目演示项目演示视频二、资料介绍完整源代码(前后端源代码+SQL脚本)配套文档(LW+PPT+开题报告)远程调试控屏包运行三、技术介绍Java语言SSM框架SpringBoot框架Vue框架JSP页面Mysql数据库IDEA/Eclipse开发四、项......
  • wx028基于springboot+vue+uniapp的网上花店小程序
    开发语言:Java框架:springboot+uniappJDK版本:JDK1.8服务器:tomcat7数据库:mysql5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:Maven3.3.9系统展示鲜花列表公告信息管理公告类型管理鲜花管理公告管理摘要网上花店微信小程序分为管理员还......
  • 基于springboot+vue的个性化旅游推荐系统的设计与实现
    开发语言:Java框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:Maven3.3.9系统展示系统首页旅游景点个人中心管理员登录管理员功能界面用户界面旅游景点界面酒店信息界面旅游......
  • 免费送源码:Java+ssm+MySQL Springboot大学生心理健康咨询小程序 计算机毕业设计原创定
    摘 要科技进步的飞速发展引起人们日常生活的巨大变化,电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用。信息时代的到来已成为不可阻挡的时尚潮流,人类发展的历史正进入一个新时代。在现实运用中,应用软件的工作规则和开发步骤,采用java技术建设大学......