首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Spring Singleton Vs Singleton设计模式-类加载器

Spring Singleton Vs Singleton设计模式-类加载器
EN

Stack Overflow用户
提问于 2013-06-13 22:36:46
回答 5查看 7.3K关注 0票数 0

单例模式在Spring容器级别维护实例,而单例设计模式在类加载器级别维护实例。

还有别的区别吗?

接下来,我仍然认为上面的原因不是一个有效的原因。事实上,一个应用程序上下文/容器只在一个类加载器中加载。因此,从技术上讲没有区别。是正确的还是我漏掉了什么?

参考:Singleton design pattern vs Singleton beans in Spring container

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2013-06-13 22:51:14

好吧,真正的区别不在于类的加载,而在于设计原则。单例模式有其自身的局限性。它在全局范围内暴露了一个对象,同时也很难测试。但是,通过像Spring或Guice这样的依赖注入框架的单例是没有这些问题的。

这个SO thread可能会帮助你理解。以及Google-singleton-detectorMisko Hevery's blog也是很有趣的读物。

票数 2
EN

Stack Overflow用户

发布于 2013-06-13 22:46:09

使用“真正的”单例有更多的限制,因为您只能创建该类的单个实例(在类加载器中)。

如果您使用Spring singleton作用域的bean,则可以为该类创建任意数量的"singleton“实例(只要bean类不是真正的singleton)。

因此,从技术上讲,它们不是一回事。

票数 1
EN

Stack Overflow用户

发布于 2013-06-13 22:48:33

这主要是这两个名称的共同之处。单例模式确保一个类只有一个实例,而Spring的单例bean作用域只是指示容器在依赖注入期间使用bean的单个实例,而bean可以是任何没有限制的类。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17089850

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档