JPA-запросы - использование имени объекта аргумента в качестве параметра для ассоциированного JPA-запроса - PullRequest
0 голосов
/ 12 апреля 2019

Похоже, что связанные вопросы не совсем соответствуют тому, что я пытаюсь сделать.

@Repository
public interface FooRepository extends JpaRepository<FooEntity, Integer> {
    @Query("select child from BarEntity p inner join p.fooColumn child where p = :parent")
    Page<FooEntity> findBy(@Param("parent") HasFooInterface parent, Pageable pageable);
}

Это запрос, который возвращает страницы FooEntity, где BarEntity является родителем в отношении.

Я хочу, чтобы запрос был определен в общем виде. Объект parent, который является экземпляром HasFooInterface, всегда будет сущностью, имеющей отношение к Foo (в этом примере BarEntity).

Так, где это говорит @Query("select child from BarEntity p inner join p.fooColumn child where p = :parent")

Я хочу иметь возможность параметризовать, что "BarEntity" будет

@Query("select child from _?parent.getClass.getSimpleName()?_ p inner join p.fooColumn child where p = :parent")

Что я могу заменить здесь, чтобы получить необходимую мне функциональность?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...