跳到主要内容

简述下列选项中,属于Spring Bean的作用域的是( ) ?

参考答案:

Spring Bean的作用域(Scope)决定了Spring IoC容器中Bean实例的生命周期和范围。以下是Spring中定义的几种Bean的作用域:

  1. singleton:这是Spring IoC容器中的默认作用域。在此作用域中,每个Bean定义只有一个实例,并且这个实例在IoC容器中是单例的。这意味着无论你在何处请求该Bean,都将返回同一个实例。
  2. prototype:在此作用域中,每次请求(通过getBean()方法)都会创建一个新的Bean实例。这意味着Bean的实例不是单例的,而是每次需要时都会创建新的实例。
  3. request:此作用域表示Bean的生命周期与Web请求的生命周期相同。这仅适用于Web应用程序。在每次HTTP请求开始时,都会创建一个新的Bean实例,并在请求结束时销毁该实例。
  4. session:此作用域表示Bean的生命周期与HTTP会话的生命周期相同。这也是仅适用于Web应用程序的。在每次HTTP会话开始时,都会创建一个新的Bean实例,并在会话结束时销毁该实例。
  5. application:此作用域表示Bean的生命周期与ServletContext的生命周期相同。这也是仅适用于Web应用程序的。在ServletContext创建时创建Bean,并在ServletContext销毁时销毁Bean。
  6. websocket:此作用域表示Bean的生命周期与WebSocket的生命周期相同。这是Spring 4.3之后引入的,仅适用于WebSocket应用程序。

所以,属于Spring Bean的作用域的有:singleton、prototype、request、session、application、websocket。