我正在将Spring Boot与Query DSL一起使用。我已将弹簧靴配置为使用蛇皮套,即spring.jackson.property-naming-strategy=SNAKE_CASE
。所以我的json有效负载输入和输出处于蛇形情况,如下所示:
{
"first_name": "First",
"last_name": "Last"
}
我正在使用@QuerydslPredicate
进行搜索。如果我在如下所示的蛇形情况下输入查询参数
(http://localhost:8080/context/resource/?first_name=First)
它不是由查询DSL谓词分析的。但是,如果我在骆驼的情况下提供以下
(http://localhost:8080/context/resource/?firsName=First)
它工作正常。这与json结构不是同义词。
如何在查询参数中实现蛇案,以便查询DSL对其进行解析?
这就是我的REST端点的样子
@GetMapping
public ResponseEntity<Output> listUsers(@QuerydslPredicate(root = User.class) Predicate predicate, Pageable pageable) {
...
return new ResponseEntity<>(output, HttpStatus.OK);
}
PN:我的模型对象处于驼峰状,如下所示
模型对象
public class User {
private String firstName;
private String lastName;
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
}
我在HandlerMethodArgumentResolver上遇到了一个解决方案,但这是很多工作。除了完成所有模型字段之外,应该有一种自动化的方法。