4

JPA Criteria API 有一些重要的限制。例如:

  • 不支持右外连接
  • 仅当实体中的关系在同一方向时才支持左外连接
  • 在 SELECT 和 FROM 子句中都不支持子查询

QueryDsl 是否querydsl-jpa受到同样的限制?

那么 QueryDslquerydsl-sql呢?

编辑:从 QueryDsl 文档(没有具体经验),QueryDsl 提供了两个查询类JPAQueryJPASQLQuery. 第一个似乎与 JPA Criteria API 具有相同的限制,但JPASQLQuery似乎没有。如果我有时间,我会更深入地研究代码并尝试一下。但是,如果有人已经对此有所了解,那么欢迎您!

4

1 回答 1

1

你的假设是正确的。Querydsl JPA 的限制与上述三个限制相同,也是 JPA 的查询语言 JPQL 的限制。

JPAQuery适用于 JPQL 查询,JPASQLQuery适用于 JPA 本机 (SQL) 查询。

于 2014-05-14T17:49:17.230 回答