Spring Data动态查询

我正在尝试使用spring数据设置动态查询,基本上我有一堆具有一系列特征的数组,我需要根据这些特征组装查询,几乎就像“WHERE特征= A AND特征= B AND特征= C“但特征量可能不同。

我注意到我可以使用@Query注释但是可以将@Query的结果分页吗?

有没有其他方法可以实现这一目标?

Page findDistinctByNameContainingAndOrganizationAndCharacteristicsInOrIngredientsContainingAndOrganizationAndCharacteristicsInOrDescriptionContainingAndOrganizationAndCharacteristicsInAllIgnoreCase( String name, Organization organization1, List characteristic1, String ingredients, Organization organization2, List characteristic2, String description, Organization organization3, List characteristic3, Pageable pageable); 

是。 @Query支持@Query ..是的,还有另一种方法可以实现这一点。

您可以查看使用条件构建查询,以便在动态条件下添加AND / OR。 我实际上使用querydsl来促进我的开发。

在这篇文章中你可以找到一个很好的解释: http : //spring.io/blog/2011/04/26/advanced-spring-data-jpa-specifications-and-querydsl/

尽管开始时看起来可能更复杂,但使用此function可以使您的代码更加符合日益增加的复杂性

Interesting Posts