该文档说明Spring的默认bean作用域是单例。RestController方法注入不支持单例(注释驱动)
我无法找到绕过此范围的任何方法级别注射。
利用这种配置
@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();
}
}
击中它两次,则输出为..
[email protected]
[email protected]
方法二:
@RestController
@Scope(value = "request")
@RequestMapping(value = "/application")
public class ApplicationController {
@Autowired
@RequestMapping
public String showModules(ModuleProvider moduleProvider) {
return moduleProvider.toString();
}
}
击中了两次,输出的是..
[email protected]
[email protected]