Spring框架支持以下几种Bean的作用域:

  1. Singleton(单例):

    • 在整个应用程序的生命周期内,只创建一个Bean实例。所有对该Bean的请求都返回相同的实例。这是Spring默认的作用域。
    <bean id="mySingletonBean" class="com.example.MySingletonBean" scope="singleton" />
    
  2. Prototype(原型):

    • 每次对Bean的请求都会创建一个新的Bean实例。每个请求都返回一个不同的实例。
    <bean id="myPrototypeBean" class="com.example.MyPrototypeBean" scope="prototype" />
    
  3. Request(请求):

    • 每次HTTP请求都会创建一个新的Bean实例,该作用域仅在Spring Web应用程序中有效。
    <bean id="myRequestBean" class="com.example.MyRequestBean" scope="request" />
    
  4. Session(会话):

    • 每个用户会话都会创建一个新的Bean实例,该作用域仅在Spring Web应用程序中有效。
    <bean id="mySessionBean" class="com.example.MySessionBean" scope="session" />
    
  5. Global Session(全局会话):

    • 在全局HTTP会话中,每个应用程序都只创建一个Bean实例。该作用域同样仅在Spring Web应用程序中有效,且需要在web.xml中配置。
    <bean id="myGlobalSessionBean" class="com.example.MyGlobalSessionBean" scope="globalsession" />
    

这些作用域允许开发者根据应用程序的需求,控制Bean的生命周期和共享情况。默认情况下,Spring的Bean是单例的,但根据应用程序的特定要求,可以选择其他作用域。

Was this helpful?

0 / 0

发表回复 0

Your email address will not be published.