【发布时间】:2015-06-18 15:35:59
【问题描述】:
文档说 Spring 的默认 bean 范围是单例。
我找不到任何关于绕过此范围的方法级别注入的信息。
有了这个配置
@Configuration
public class ApplicationConfiguration {
@Bean
public ModuleProvider getModuleProvider() {
return new ModuleProvider();
}
}
方法一(我期望这两种结果):
@RestController
@Scope(value = "request")
@RequestMapping(value = "/application")
public class ApplicationController {
@Autowired
ModuleProvider moduleProvider;
@RequestMapping
public String showModules() {
return moduleProvider.toString();
}
}
点击两次,输出是..
application.ModuleProvider@673f63cb
application.ModuleProvider@673f63cb
方法二:
@RestController
@Scope(value = "request")
@RequestMapping(value = "/application")
public class ApplicationController {
@Autowired
@RequestMapping
public String showModules(ModuleProvider moduleProvider) {
return moduleProvider.toString();
}
}
点击两次,输出是..
application.ModuleProvider@1cc4fbcb
application.ModuleProvider@57248dbf
【问题讨论】: