我正在查看此页面 ( https://docs.spring.io/spring-data/jpa/docs/current/reference/html/#jpa.repositories ) 上关于方法命名的示例,是否可以创建一个复杂的链式方法名称,例如
findByProgrammeAndDirectorAndProgDateBetweenOrderByProgDateStartTimeAsc
在他们给出的示例中,他们只对一个值执行 OrderBy。在上面的示例中 ProgDate
和 StartTime
将是两个单独的值。
原文由 PDStat 发布,翻译遵循 CC BY-SA 4.0 许可协议
诀窍是使用方向关键字
Asc
和Desc
简单地分隔要排序的属性。所以你可能想要在你的查询方法中是这样的:请注意,我们如何通过
Asc
结束第一个属性定义并继续下一个属性。一般来说,一旦方法名称超过一定长度或复杂性,我们建议切换到基于
@Query
的查询。主要原因是客户调用这些非常长的方法很尴尬。使用@Query
你宁愿获得查询语言的全部功能加上一个合理大小的方法名称,它可能是更高级别的语言来表达查询的意图。