使用Spring Expression Language将请求标头绑定到控制器中的bean

时间:2019-04-12 23:21:59

标签: java spring

我正在尝试构建一个可以包含所有请求参数,路径变量,标头等的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。

0 个答案:

没有答案