Spring单例和Java单例(设计模式)有什么区别? [复制]

2024-01-19

我正在学习 Spring 框架,目前正在阅读一本关于它的书。 这本书里说Spring单例与Java单例不同? 这意味着什么以及有什么区别? 谢谢


Java 单例的作用域是 Java 类加载器,Spring 单例的作用域是容器上下文。

这基本上意味着,在 Java 中,您可以确定单例只有在加载它的类加载器的上下文中才是真正的单例。其他类加载器应该能够创建它的另一个实例(前提是这些类加载器不在同一个类加载器层次结构中),尽管您在代码中尽了一切努力来阻止它。

在 Spring 中,如果您可以在两个不同的上下文中加载单例类,那么我们就可以再次打破单例概念。

因此,总而言之,如果 Java 无法在给定的类加载器中创建该类的多个实例,则 Java 将其视为单例;而如果 Spring 无法在给定的容器中创建某个类的多个实例,则将其视为单例。语境。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Spring单例和Java单例(设计模式)有什么区别? [复制] 的相关文章

随机推荐

  • 不断增长的 Amazon EBS 卷大小 [已关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 亚马逊的 EC2 和 EBS 服务给我留下了深刻的印象 我想知道是否可以增加 EBS 卷 例如 如果我有 50 GB 的卷 但空间开始不足 我可以在需
  • C++ 内存中键值存储

    我正在寻找有关具有 C 接口或用 C 编写的内存中键值存储引擎或库的建议 我正在寻找可以毫无问题地扩展到大约 100mill 个键值对并且在 Linux 和 win32 64 上兼容 编译的解决方案 怎么样std map http cplu
  • R list() 的 Python 等效项

    R 的 list 也允许标记元素 Python 中是否有等效的方法来实现以下功能 list prob topTalent name Roger Python 文档位于https docs python org 3 tutorial intr
  • 如何查看给定 iOS ipa 文件中定义的 NSString

    我记得我以前做过这个 但忘记了命令 e g 我在源代码中定义了一个 NSString 例如 NSString s secret 我记得我可以使用以下命令查看内容strings命令 但我忘记了查看它的确切命令 e g strings my i
  • 1064, “您的 SQL 语法有错误;...” Python MySQL

    所以我从上周五开始就一直在研究这个问题 但无法解决这个错误 第1064章 你的SQL语法有错误 检查手册 与您的 MySQL 服务器版本相对应 以便使用正确的语法 第 1 行的 u 161010 035670 WHERE order id
  • 必填字段验证器未触发

    我在使用具有 TextBox 和 requiredFieldValidator 的标准 ASP NET 页面时遇到问题 重现的步骤非常简单 在页面上放置一个文本框 在页面上放置一个RequiredFieldValidator 将Requir
  • 如何使 Tab 页的宽度适合 TabControl 的宽度

    我有一个带有两个选项卡页的 TabControl 如何使选项卡页适合 TabControl 的宽度 如下面的屏幕截图所示 我尝试使用以下代码行 但它也不起作用 tabControl1 SizeMode TabSizeMode FillToR
  • Java:检测变量是字符串还是整数

    我正在为我的一些家庭作业寻求一些帮助 我希望用户输入一个数字字符串 然后将其转换为整数 但我想创建一个循环来检测用户是否输入了错误的值 例如 一百 而不是 100 我的想法是做这样的事情 do numStr JOptionPane show
  • Swift 对具有多个排序标准的数组进行排序[重复]

    这个问题在这里已经有答案了 Swift 中如何按多个条件对数组进行排序 例如 字典数组如下所示 items item itemA status 0 category B item itemB status 1 category C item
  • 使用自定义图标进行 Google 地图标记定位

    我遇到一个问题 带有自定义图标的标记似乎显示在地图上略有不同的点 具体取决于缩放级别 我以前使用过带有自定义图标的标记 所以我不知道我做错了什么 您会看到 最初标记看起来像是位于道路上 但如果缩小两次 它看起来就像在上面 如果放大两次 它看
  • GAE Blobstore 类文件 API 弃用时间表(py 2.7 运行时)

    这是 App Engine 团队的问题 上周我们意识到 App Engine 团队已将用于写入和读取 blobstore 的类文件 API 标记为已弃用 并且将来可能会被删除 我们有相当多的基础设施依赖于该 API 现在我们需要移植到他们建
  • 在python 3.6中导入tensorflow时出现非法指令:4

    我安装了macOS 上的张量流 https www tensorflow org install install mac使用 Virtualenv 一切顺利 成功安装了 6 1 11 0 tensorflow 1 6 0 是终端的最后一个输
  • 尝试呈现一个 UIViewController,其视图不在窗口层次结构中

    我有一个具有以下层次结构的多视图应用程序 启动 gt 导航控制器 gt 表视图控制器 gt 设置视图控制器 Splash 是应用程序入口点 因此成为根视图控制器 当我尝试通过设置视图控制器上的操作将图块添加到带区时 我收到调试器警告 app
  • 传单 GeoJSON 显示

    我遇到了一个任务 需要使用 leaflet js 库和 geojson 作为数据存储 几乎立即 遇到了以下问题 从 geojson 对象创建的多边形不显示在地图上 而由本机传单方法创建的多边形则完美地工作 这是我的代码 var map ne
  • 自编译 Roslyn 构建性能:不如最初发布的 Roslyn 版本快

    用一句话来形容我在做什么 检查分支Update 1来自罗斯林 github 存储库 https github com dotnet roslyn git 构建 csc exe 并使用我刚刚自己构建的 csc exe 版本编译随机解决方案 预
  • Pandas 的 ValueError - 传递值的形状

    我正在尝试使用 Pandas 和 PyODBC 从 SQL Server 视图中提取内容并将内容转储到 Excel 文件中 但是 在转储数据帧时出现错误 我可以打印列和数据帧内容 ValueError Shape of passed val
  • Eclipse 中的调试:无断点的变量快照

    我正在 Eclipse 中调试 Java 程序 我想观察一个特定的变量 但是 由于我的程序使用 GUI 因此创建断点会导致窗口冻结 例如 这尤其令人烦恼 尝试右键单击某个项目并导航上下文菜单 我实际上并不想停止程序 我只是想观察一个特定的变
  • 页面加载时使用 AJAX 不是一件坏事吗?

    我在上面看到过这个书呆子晚餐 http nerddinner codeplex com和其他网站 页面加载时 在 JavaScript 中 通过浏览器 将发出 AJAX 请求 从呈现初始页面的同一服务器获取一些数据 数据会很小 并且不存在会
  • AnyDac 又名 FireDac 无法生成更新查询

    我已经使用 UniDac 很长时间了 决定转向 FireDac 因为它具有良好的异步方法 在继续使用后 我发现我的数据编辑不再起作用 它给了我一个错误 FireDAC 物理 330 无法生成更新查询 更新表未定义 我在这里想做的是我有一个
  • Spring单例和Java单例(设计模式)有什么区别? [复制]

    这个问题在这里已经有答案了 我正在学习 Spring 框架 目前正在阅读一本关于它的书 这本书里说Spring单例与Java单例不同 这意味着什么以及有什么区别 谢谢 Java 单例的作用域是 Java 类加载器 Spring 单例的作用域