我正在尝试使用SpringData查询方法:
List<RecordValue> findByValueDateBetweenOneDateAndTwoDateLike(LocalDateTime oneDate, LocalDateTime twoDate);
但是由于我的实体中缺少LocalDateTime oneDate,LocalDateTime twoDate,所以我无法使用它们。
我无法在SpringDoc中找到如何将非实体字段与DataQuery一起使用的方法名称。我想在没有@ Query,@ Param的情况下做到这一点。
也许有人知道吗? 谢谢
答案 0 :(得分:0)
之间:findByStartDateBetween:…其中x.startDate在1之间?和?2
也就是说,从方法名称派生的自动查询有其局限性。非常适合非常简单的查询,这些查询可以使方法名称保持理智(例如,findByName)。但是对于更复杂的查询,最好的策略几乎总是选择一个好的方法名称,用@Query
注释该方法,并明确指定JPQL查询:
@Query("select v from RecordValue v where v.valueDate between :start and :end)
List<RecordValue> findWithValueDateInInclusiveRange(@Param("start") LocalDateTime start, @Param("end") LocalDateTime end);