JPA Criteria API имеет некоторые важные ограничения. Например:
- нет поддержки правого внешнего соединения
- поддержка левого внешнего соединения только в том случае, если отношение в сущностях находится в одном направлении
- нет поддержки подзапроса ни в предложениях SELECT, ни в предложениях FROM
Есть ли у QueryDsl querydsl-jpa
те же ограничения?
А как насчет QueryDsl querydsl-sql
?
РЕДАКТИРОВАТЬ: Из документации QueryDsl (без конкретного опыта работы с ней) QueryDsl предоставляет два класса запросов JPAQuery
и JPASQLQuery
. Первый, кажется, имеет то же ограничение, что и JPA Criteria API, но JPASQLQuery
не похоже. Если найду время, углублюсь в код и попробую. Но если кто-то уже что-то знает об этом, то милости просим!