Spring Bean 默认是单例还是多例?

Spring Bean默认是单例的,也就是说Spring IoC容器默认只会创建一个Bean实例,并且所有对该Bean的请求都将返回这个单一实例。这种作用域被称为Singleton作用域。

当然,你也可以通过改变Bean的作用域来改变这个行为。例如,如果你将Bean的作用域设置为Prototype,那么Spring IoC容器将为每个对该Bean的请求创建一个新的实例。

以下是一个将Bean作用域设置为Prototype的例子:

@Bean(scope = ConfigurableBeanFactory.SCOPE_PROTOTYPE)
public MyBean myBean() {
    return new MyBean();
}

在这个例子中,每次注入MyBean时,都会创建一个新的实例。

发表评论

后才能评论