Параметры в методе запроса SpringData - PullRequest
0 голосов
/ 02 июля 2018

Я пытаюсь сделать метод запроса SpringData:

  List<RecordValue> findByValueDateBetweenOneDateAndTwoDateLike(LocalDateTime oneDate, LocalDateTime twoDate);

Но из-за отсутствия LocalDateTime oneDate, LocalDateTime twoDate внутри моей сущности я не могу их использовать.

Я не могу найти в SpringDoc, как использовать неединичные поля с DataQuery в имени метода. Я хочу сделать это без @Query, @ Param.

Может кто знает как? Спасибо

1 Ответ

0 голосов
/ 02 июля 2018

С документация :

Между: 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);
...