java - querydsl 是否受到与 JPA Criteria API 相同的限制?

标签 java sql jpa querydsl or-mapper

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

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

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

QueryDsl querydsl-sql 怎么样?

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

最佳答案

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

JPAQuery 用于 JPQL 查询,JPASQLQuery 用于 JPA native (SQL) 查询。

关于java - querydsl 是否受到与 JPA Criteria API 相同的限制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23625885/

相关文章:

c# - Java 在哪些方面比 C# 更优雅?

PHP 语法 |在数组中使用变量

c++ - 如何将数据从字符串C++插入到sqlite表?

java - 如何映射已在 ORACLE 中创建但在 Hibernate 实体中创建的 "CREATE UNIQUE INDEX"

java - 最后一次尝试 SSL/TLS

java - 创建从 Jackson 的 ObjectNode 继承的自定义类

Java 同步集合与对象

java - 比较两个时间戳日期

java - JPA/Hibernate 实体类和同步的最佳实践是什么?

hibernate 覆盖@transient