我的 ActionResponse 代码是:
@Component
@Scope(value = "request",proxyMode = ScopedProxyMode.TARGET_CLASS)
public class ActionResponse{
public int a;
//body
}
我的控制器:
@Controller
@RequestMapping(value="/ajax/discussion")
public class DiscussionController extends AbstractController {
@Autowired
private ActionResponse actionResponse;
public void setActionResponse(ActionResponse actionResponse) {
this.actionResponse = actionResponse;
}
@RequestMapping("/test")
public @ResponseBody String test(){
String response=this.actionResponse.a+"";
if(this.actionResponse.a==0)
this.actionResponse.a=10;
return response;
}
}
我启动项目,然后第一次请求 /ajax/discussion/test 它显示 0
但之后对于其他请求,它显示 10
由于 ActionResponse 的请求范围,它必须在每个请求中显示 0
问题是:为什么不是在每个请求中都创建一次 bean(ActionResponse)?!!!