我有一个与联系人具有一对一关系的客户实体。
如果我想获取客户名称,我需要写:
client.getContact().getLastName()
我使用 querydsl lib 来过滤 Spring Boot 应用程序中的客户端列表
/api/clients?contact.lastName=Doe
我的控制器签名:
public ResponseEntity<ResponseListDTO> getClients (
@QuerydslPredicate(root = Client.class) Predicate predicateClient,
Pageable pageable)
它运作良好:谓词创建良好并且过滤器有效。
但现在我需要过滤两个关系级别内的字段:
client.getContact().getAddress().getCity()
所以我不想写:
/api/clients?contact.address.city=XXX
但它没有与@QuerydslPredicate映射。没有错误,但 @QuerydslPredicate 谓词仍然为空(就像没有过滤器一样)。
Thanks!
找到了解决方案@QueryInit
here: http://www.querydsl.com/static/querydsl/4.0.7/reference/html_single/#d0e2245 http://www.querydsl.com/static/querydsl/4.0.7/reference/html_single/#d0e2245
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)