Я новичок в Spring data JPA и пытаюсь понять, как лучше всего использовать его с QueryDSL. Без QueryDSL я мог бы просто создавать любые запросы в моем интерфейсе SpringData с аннотацией @Query.
Чтобы иметь такой же опыт использования QueryDSL, из того, что я вижу, мне нужно либо создать свою собственную реализацию пользовательского репозитория, и мой интерфейс репо расширит мой собственный интерфейс реализации, либо поместить все мои запросы QueryDSL на сервисный уровень, который обертывает мое репо. .
В первом случае я теряю возможность использовать любой из автоматически созданных методов SD (например: findAll(QueryDSL predicate)) в моем пользовательском репо, поскольку у меня нет доступа к фактическому объекту репо, а во втором случае я размещение логики запроса на уровне службы, а не на уровне репо.
Ни одно из решений не кажется мне особенно привлекательным. Есть ли более подходящий 3-й способ? Или я неправильно понимаю, как правильно использовать QueryDSL и Spring Data?
Спасибо!
Эрик