在Spring框架中,scope用于定義bean的作用域。以下是Spring中常見的幾種bean作用域及其配置方法:
<bean id="singletonBean" class="com.example.SingletonBean" scope="singleton"/>
或者使用Java配置類:
@Configuration
public class AppConfig {
@Bean
@Scope("singleton")
public SingletonBean singletonBean() {
return new SingletonBean();
}
}
<bean id="prototypeBean" class="com.example.PrototypeBean" scope="prototype"/>
或者使用Java配置類:
@Configuration
public class AppConfig {
@Bean
@Scope("prototype")
public PrototypeBean prototypeBean() {
return new PrototypeBean();
}
}
RequestContextListener
來啟用request作用域。而在Java配置中,可以配置ServletContextInitializer
來實現。RequestContextListener
來啟用session作用域。而在Java配置中,可以配置ServletContextInitializer
來實現。ContextLoaderListener
來啟用application作用域。而在Java配置中,可以配置ServletContextInitializer
來實現。需要注意的是,除了上述幾種常見的作用域外,Spring還支持其他自定義作用域。要使用自定義作用域,你需要實現org.springframework.beans.factory.config.Scope
接口,并在配置中進行注冊。