假设我有一个Spring Controller 。
@RequestMappin("/path")
public MyController {
}
如前所述, Controller 的默认范围是Singleton。
我知道我可以在REQUEST作用域bean中 Autowiring 请求,但是,如果我尝试 Autowiring 请求,那么
@RequestMappin("/path")
public MyController {
@Autowired
private HttpServletRequest request;
}
它仍然有效,对于每个请求,我都会获得适当的请求对象。这是否意味着无论是否请求范围, Autowiring 都能正常工作?
最佳答案
如果工作正常,则意味着spring不会完全注入(inject)http请求,而是注入(inject)代理。代理将调用委托(delegate)给当前的http请求