Singleton 意味着类的单个对象。在 Spring 中,我们可以使用单例范围为同一个类创建多个 bean(bean 只是一个对象)。例如,请参阅下面的代码
<bean id="abc" class="com.test.Abc"/>
<bean id="def" class="com.test.Abc"/>
在这种情况下,spring 将创建 2 个单例(我引用了一些 SO 链接)。我们如何将其称为 singleton ,因为为同一个类创建了多个对象。
As per the definition
单例的目的是控制对象的创建,将对象的数量限制为一个。由于只有一个 Singleton 实例,因此 Singleton 的任何实例字段在每个类中只会出现一次。
最佳答案
每个 bean 都是单例,无论您创建同一个 bean 多少次(只要范围设置为默认或单例),您都只会在 object 上拥有。 它使得 2 个具有相同类型的 bean 可以创建不同的对象,因为您可以设置不同的构造函数参数或属性
关于java - spring如何维护单例对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39716035/