Я хочу что-то подобное ... я знаю, что кто-то получит то, что я хочу
public interface PersonneRepo extends JpaRepository<T, Long> {
@Query("Select p.name, p.surname, p.age, p.city, p.street from "+T+" p where p.nom = ?1 and p.prenom = ?2")
public T customRequest(String nom, String prenom,String T);
}
Это три вопроса:
Как сделать репозиторий с параметром динамического типа
Как сделать запрос с динамическим предложением from.
Как сделать метод запроса с динамическим типом возврата.
Последнее вы можете сделать с помощью динамические проекции, но он только конвертирует/заворачивает результат в прокси нужного типа, так что, скорее всего, вам это не поможет.
Номер 2 вы можете сделать, написав реализация пользовательского метода, используя API критериев.
Номер 1 является дубликатом этот вопрос.
Это означает, что это в основном один и тот же вопрос, и вы должны прочитать ответы на связанный вопрос.
public interface PersoRepo<T> extends JpaRepository<T, Long> {
@Query("Select p.name, p.surname, p.age, p.city, p.street from #{#entityName} p where p.nom = :nom and p.prenom = :prenom")
public T customRequest(@Param("nom") String nom, @Param("prenom") String prenom);
}
привет, codiallo, мне нравится ваше решение... и я новичок в stackoverflow... так как мне указать значение для #entityName.. и спасибо за этот ответ на мой первый вопрос о stackoverflow.
ПРОБЛЕМА!!!! ЕГО БРОСАЕТ "НЕ УПРАВЛЯЕМЫЙ ТИП 'T' СУБЪЕКТ, НЕ МОЖЕТ СОЗДАТЬ БИН PersoRepo". Что мне теперь делать?
Вам не нужно устанавливать имя сущности. Могу ли я увидеть ваш исходный код, где вы используете репозиторий?
привет, спасибо за этот ответ .. не могли бы вы объяснить мне, что означает этот дубликат этого вопроса, я не могу его получить. и я знаю некоторые основы критериев API.