跳到主要内容

Spring Bean 的默认作用范围是( ) ?

参考答案:

Spring Bean 的默认作用域(Scope)是Singleton。这意味着在Spring IoC容器中,每个Bean的定义只会有一个实例。无论你请求多少次这个Bean,你都会得到同一个实例。这是Spring框架为了提高性能和减少内存消耗而选择的默认行为。

Spring提供了多种作用域,包括:

  • Singleton:整个Spring IoC容器中,只有一个Bean实例,默认的作用域。
  • Prototype:每次请求都会创建一个新的Bean实例。
  • Request:每次HTTP请求都会创建一个新的Bean实例,仅适用于WebApplicationContext环境。
  • Session:在一个HTTP Session中,每个Session对应一个Bean实例,仅适用于WebApplicationContext环境。
  • Application:在ServletContext生命周期内,只创建一个Bean实例,仅适用于WebApplicationContext环境。
  • WebSocket:在一个WebSocket生命周期内,只创建一个Bean实例,仅适用于WebApplicationContext环境。

你可以通过在Bean定义中使用@Scope注解或在XML配置中指定<bean>元素的scope属性来更改Bean的作用域。