【发布时间】:2017-11-29 02:57:21
【问题描述】:
我正在使用 Spring Data Rest JPA,它根据方法名称在内部实现查询。
我在我的存储库界面中编写了以下方法,它应该列出处于某个状态的所有用户,如果存在名称和/或年龄,它应该过滤结果。
StateId 是必需的,但 name 和 age 是可选的过滤器参数
public List<User> findByStateIdAndNameOrAge(Integer stateId, String name , Integer age, Pageable pageable);
我没有得到任何结果。我哪里做错了?
【问题讨论】:
-
@KrishnaKuntala 但 spring data-jpa 将立即实施
-
我认为您的查询可能被解释为:(StateId And name) OR Age 这不是您想要的。您最好的选择是使用标准 api 或创建动态查询,因为您的查询在您的可选参数的运行时函数中发生变化。
标签: spring hibernate spring-data-jpa jpql