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时,都会创建一个新的实例。