多线程中的JavaSpring请求范围bean初始化
我有一个初始化请求范围bean的配置
@Configuration
public class ConfigurationClass {
@Bean(name = "TestBean")
@Scope(value = WebApplicationContext.SCOPE_REQUEST, proxyMode = ScopedProxyMode.TARGET_CLASS)
public TestBean getTestBean() {
...
}
}
以及使用上述bean的ClientClass
@Repository
public class ClientClass {
@Resource(name ="TestBean")
private TestBean testBean;
public void accessRequestBeanMethod() {
testBean.testMethod();
}
}
处理HTTP请求的请求生成n个线程,分别调用clientClass。accessRequestBeanMethod()。Spring在每个线程中初始化一个新的TestBean实例。我对请求范围的理解是,对于HTTP请求,bean只会初始化一次,但似乎每个线程都会初始化它。我希望为请求线程中的所有派生线程实现bean的缓存。我怎样才能做到呢
共 (0) 个答案