问题标签 [querydsl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1463 浏览

java - Lucene 关于否定的嵌套查询评估

我正在向Querydsl (它为 Java 提供类型安全的查询)添加Apache Lucene支持,但我在理解 Lucene 如何评估查询时遇到问题,尤其是在嵌套查询中的否定方面。

例如,我认为以下两个查询在语义上是相同的,但只有第一个返回结果。

第二个示例中的简化对象树如下所示。

Lucene 自己的QueryParser似乎评估"AND (NOT"成同一种对象树。

这是 Lucene 中的错误还是我误解了 Lucene 的查询评估?如有必要,我很乐意提供更多信息。

0 投票
1 回答
458 浏览

java - 使用 querydsl 查询集合时出现 ExceptionInInitializerError

执行以下代码时,执行查询/投影时出现异常。有人知道我做错了什么吗?非常感谢所有帮助。

我得到的异常如下:

com.mysema.query.collections.MiniApi.(MiniApi.java:22)...等处的线程“主”java.lang.ExceptionInInitializerError 中的异常。

原因:com.mysema.query.collections.ExprEvaluatorFactory.(ExprEvaluatorFactory.java:55) com.mysema.query.collections com.mysema.codegen.EvaluatorFactory.(EvaluatorFactory.java:51) 的 java.lang.NullPointerException .ExprEvaluatorFactory.(ExprEvaluatorFactory.java:50) at com.mysema.query.collections.ExprEvaluatorFactory.(ExprEvaluatorFactory.java:32) ... 还有 4 个

0 投票
4 回答
4983 浏览

scala - Scala 的 SQL DSL

我正在努力为 Scala 创建一个 SQL DSL。DSL 是 Querydsl 的扩展,Querydsl是一种流行的 Java 查询抽象层。

我现在正在努力使用非常简单的表达式,如下所示

由于 Querydsl 已经支持可以在这里使用的表达式模型,我决定提供从 Proxy 对象到 Querydsl 表达式的转换。为了使用代理,我创建了一个这样的实例

通过以下隐式转换,我可以将代理实例和代理属性调用链转换为 Querydsl 表达式

现在我可以构造这样的表达式

我正在努力解决以下问题。

eq并且ne已经在 Scala 中作为方法可用,因此在使用时不会触发转换

这个问题可以概括如下。当使用 Scala 类型中已经可用的方法名称时,例如 eq、ne、startsWith 等,需要使用某种转义来触发隐式转换。

我正在考虑以下

大写

例如,Circumflex ORM中的方法,这是一个非常强大的用于 Scala 的 ORM 框架,具有类似的 DSL 目标。但是这种方法会与Querydsl中小写的查询关键字(select,from,where等)不一致。

一些前缀

谓词使用的上下文是这样的

对于 Scala 的 SQL DSL 构建,您是否看到了更好的选择或不同的方法?

所以这个问题基本上归结为两种情况

  • 使用超类中存在的方法时是否可以触发隐式类型转换(例如eq

  • 如果不可能,那么对于 , 之类的方法使用最 Scalaesque 的语法是eq什么ne

编辑

通过使用别名实例和基于 $-prefix 的转义语法,我们在 Querydsl 中获得了 Scala 支持。这是关于结果的博客文章:http: //blog.mysema.com/2010/09/querying-with-scala.html

0 投票
2 回答
4067 浏览

java - 使用 QueryDSL 和 MySQL 数据库设置 maven 插件

我正在尝试设置我的项目,以便可以对 MySQL 数据库使用 querydsl-sql。我想获取类并使用 maven 生成类,但在设置插件时遇到问题。

我已经尝试从此处提供的示例配置 pom.xml

对 mysql-connector-java 的依赖也在 pom.xml 中给出。我遇到的问题是它似乎找不到驱动程序:

有人可以帮我弄这个吗?如何指定驱动程序?

0 投票
1 回答
475 浏览

querydsl - 我可以使用 Querydsl 创建自定义后端实现吗?

我们的组织中有一个内部后端搜索引擎,我想使用 Querydsl 之类的工具以类型安全的方式生成查询。现在,Querydsl 项目似乎已经交付了许多后端实现(HQL、SQL、MongoDB 等),因此我认为必须具有构建自己的灵活性。

有人在这方面取得了成功吗?

0 投票
2 回答
18117 浏览

java - 如何使用 QueryDSL 在 Spring Data JPA 中使用 order by 和 Limit

我在我的项目中使用带有 RDBMS 的 Spring Data JPA。我有一个要求,我必须从具有最新日期的表中从数据库中获取一条记录。为此,我需要使用限制和按函数排序或使用子查询。但是,我想知道我是否希望不使用 NamedQuery 有没有一种方法可以使用 Spring Data JPA 和 QueryDSL 来实现这一点。

0 投票
2 回答
10918 浏览

java - QueryDSL 生成的类无法访问二级元素进行查询

我在我的 Java 项目中将 QueryDSL 与 Spring Data JPA 一起使用,并使用 QueryDSL maven 插件生成了文件以使用它生成的 QueryDSL 模型类。当我将它用于一级嵌套对象时,这很有效,但是如果我尝试访问二级访问对象,它会给出一个 NullPointerException 保存二级模型对象未初始化。

将不胜感激一些帮助。

我在第 3 行收到 NullPointerException qmachine.vendor 为空。

我的映射类如下:事务

机器类是:

供应商类是

我故意省略了 getter 和 setter。

0 投票
7 回答
14443 浏览

gradle - 从 Gradle 构建脚本生成 JPA2 元模型

我正在尝试为新项目设置 Gradle 构建脚本。该项目将使用 JPA 2 和Querydsl

Querydsl 参考文档的下一页上,他们解释了如何为 Maven 和 Ant 设置 JPAAnnotationProcessor (apt)。

我想对 Gradle 做同样的事情,但我不知道怎么做,我心爱的朋友在这方面没有给我太多帮助。我需要找到一种方法来调用带有参数的 Javac(最好没有任何额外的依赖项),以便能够指定 apt 应该使用的处理器(?)

0 投票
1 回答
679 浏览

java - 查找多子类的不同属性

我有 3 个实体AgentPerson并且Machine

我搜索了一种解决方案来查询给定参数上的所有代理,该参数将在和of或标签上"name"查找。firstNamelastNamePersonMachine

是否可以使用 jpql 查询?

谢谢

0 投票
3 回答
31275 浏览

subquery - JPQL / QueryDSL:加入子查询并获取别名列

我试图通过加入子查询来获得 groupBy 计数的平均值。不知道这是否是正确的方法,但除了 mysema 文档之外,我对子查询一无所知。

场景:客户平均每个产品做了多少订单?含义:客户订购产品。因此,客户多次(计数)订购了特定产品。客户为任何产品下的平均订单数是多少?

可能听起来有点假设,实际上它只是原型的一部分,但它让我想知道,如何使用来自 Mysema 的奇特 QueryDSL 获取对在子查询中创建的自定义列的引用。

在 SQL 中,您只需给计数列一个别名并使用第二个 ID 列连接。QueryDSL 也有“as()”方法,但我不知道如何检索该列,而且我不知道它如何将一个查询与另一个查询连接起来,因为 query.list() 只是获取一个列表,但对于某些加入接受它的原因。感觉不对...

这是我的代码:

再次:我如何加入子查询?我如何获得别名“count”列以进行更多聚合,如 avg(顺便说一句,我的组对吗?)可能是我在这方面有一些其他错误,所以任何帮助表示赞赏!

谢谢!

编辑: 这是我希望 QueryDSL 产生的原生 SQL: