Есть ли в Spring Data JPA соглашение об именовании для “члена”?
-
21-12-2019 - |
Вопрос
Spring Data JPA создает ряд запросов, основанных на соглашении об именовании методов интерфейса.Существует ли какое-либо соглашение об именовании для выполнения Запрос "УЧАСТНИК"?
Я могу заставить следующее работать с JPQL:
@Query("select e from MyEntity e where ?1 member of e.entities")
Тем не менее, я бы хотел использовать метод соглашения об именах, если это возможно.Я не смог найти ничего в документах по этому поводу, поэтому я надеюсь, что просто что-то упустил.Если есть какая-то фундаментальная причина, по которой для этого не может быть методов, мне было бы интересно узнать и это.
Решение
Skiming Последняя версия этого документа не похоже, что есть.Вот доступные ключевые слова имени метода:
Другие советы
Мне кажется, что документация о Containing
(IsContaining
, Contains
) ключевое слово.
https://dzone.com/refcardz/core-spring-data расширяет документацию следующим образом:
СОДЕРЖАЩИЙ:Содержащий, IsContaining, Содержит (Строку или коллекция типы только)
Таким образом, вы можете использовать Containing
ключевое слово в качестве замены member of
.
Например:
// select e from MyEntity e where ?1 member of e.entities
findByEntitiesContaining(TypeOfMember member);