我正在尝试构建一个可以包含所有请求参数,路径变量,标头等的bean。我知道,如果名称对齐,spring会自动映射请求参数和路径变量,但标头并不那么幸运。这是我真正想要使用的解决方案,但是没有填充ID。此解决方案是否可以使用,如果可以,则需要更改什么?
public class Controller {
@GetMapping("..")
public ResponseEntity<..> endpoint(final RequestEncompassingBean bean) {
..
}
}
@Component
@Scope(value = WebApplicationContext.SCOPE_REQUEST, proxyMode = ScopedProxyMode.TARGET_CLASS)
public class RequestEncompassingBean {
@Value("#{ request.getHeader('id') }")
private String id;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
}
最后,我知道HandlerMethodArgumentResolver。