问题标签 [criteria-api]

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 投票
2 回答
1649 浏览

java - 使用 Hibernate-Search 进行复杂查询而不是 Criteria API

在使用 Wicket+Spring+JPA/Hibernate 堆栈的应用程序中,我有一个收件箱/搜索页面,它应该具有相当复杂的搜索功能,其中保存在数据库中的记录使用无数过滤选项进行过滤。到目前为止,我已经使用 JPA Criteria API 来构建数据库查询,但它变得非常混乱。我想知道 Hibernate-Search 是否适合这个,即使我真的不需要任何全文搜索功能,我只是觉得(从我读到的内容)生成查询可能会更容易一些?

0 投票
2 回答
9456 浏览

hibernate - 使用 JPA 2.0 Criteria API 和 cast 导致生成的 JPQL 在 Hibernate 中失败

我是新 JPA 2.0 Criteria API 的第一次用户,当我需要将数字字段转换为 String 以将其与 String 参数进行比较时,我遇到了问题。原因是我想搜索部分数字,所以我在 CriteriaBuilder 上使用了“like”。这是一个代码示例:

重要的部分是

我使用 Criteria API 将 Path 转换为 CriteriaBuilder 上类似方法所需的表达式。

现在,当我运行并执行此代码时,底层 JPA 2.0 实现 Hibernate 失败,并出现以下异常:

在我看来,Hibernate 正在生成一个不正确的 JPQL。

我不知道出了什么问题,你能帮忙吗?

我使用最新的 Hibernate 版本(3.6.0.CR2)

谢谢

0 投票
1 回答
3994 浏览

java - 如何在休眠条件中转换日期类型

我有一个情况。我在 mysql 数据库中有两种日期。一个是日期,另一个是日期时间。现在在休眠标准中,我必须检查一个日期是否大于另一个日期?

criteria.add(Restrictions.lt("award.deadline", "submission.date_received"));

但是不同的类型会导致显示“java.lang.ClassCastException:java.lang.String 无法转换为 java.util.Date”的问题。

即使我尝试使用日期解析器对其进行解析,但它并没有将其视为日期,而是仅将其视为字符串。那么,你能告诉我如何在休眠标准中将一个日期转换为不同的类型吗?

0 投票
2 回答
4823 浏览

java - 对 JPA 2 条件查询进行分页

是否可以对 JPA 2条件查询进行分页,就像在 Hibernate 中使用 setFirstResult 和 setMaxResults 一样?

如果没有,是否有任何解决方法?

0 投票
4 回答
177313 浏览

jpa - JPA 2.0,标准 API,子查询,表达式

我曾多次尝试用子查询和IN表达式编写查询语句。但我从来没有成功过。

我总是得到异常,“关键字'IN'附近的语法错误”,查询语句是这样构建的,

我知道“IN”输之前的那个词。

你写过这样的查询吗?有什么建议吗?

0 投票
1 回答
1559 浏览

eclipselink - JPA 2 Criteria API - 使用 Eclipse 将 JPQL 转换为 Criteria API 查询的异常link

我在将 JPA 查询转换为使用 Criteria API 时遇到问题

我有以下查询尝试查找与传递的地址参数匹配的 ServiceUser。ServiceUser 是具有具体子类 Child 和 Adult 的抽象实体。我在 ServiceUser 类上使用了联合继承策略。

当我调用此方法时,一切正常。

但是,如果我尝试用以下使用生成的元模型和类型查询的函数替换该函数,那么我会遇到异常

这是 Eclipslink 日志记录的堆栈跟踪。似乎有一个 NulPointerException 被抛出,但我不知道为什么?

查看使用失败标准 api 查询发出的 sql,并与我使用 jpa 字符串查询执行查询时发出的 sql 进行比较。

条件查询

JPA 字符串查询

我可以看到处理 ServiceUser 的 Adult 子类的第一部分在两种情况下都是相同的,但是当涉及到 Child 子类时,Criteria 查询会抛出

这可能是 Eclipselink 的错误吗?

0 投票
2 回答
4752 浏览

c# - 如何在 NHibernate 中使用 Criteria API 创建子查询 Projection,给它一个别名,并按别名排序

forum.hibernate.org/viewtopic.php?p=2378849

其中一张海报给出了这个答案:

您需要创建一个 Projection (...),给它一个别名,然后您可以按别名排序。没有时间发布详细信息,但我很确定这会奏效。

有人可以提供一个使用 Criteria API 的简单示例,该查询使用 Projection 执行子查询,然后将该子查询用作别名,然后按该别名排序?

干杯!

0 投票
1 回答
1232 浏览

c# - 如何使用 NHibernate 的 Criteria Api 将子查询编写为别名

嘿伙计们,说我有这样的实体和映射:

所以,基本上,一个剧集有很多组。每个组都有一个 PubDate,因此一个情节有许多 PubDate。

我正在尝试使用 NHibernate Criteria API 编写一个查询,如果我有一个组 ID,它可以让我查询情节并按 PubDate 对其进行排序。

本质上,我如何为此 SQL 查询编写等效的 Criteria API 查询:

请帮忙!欢呼伙计们

0 投票
1 回答
16934 浏览

hibernate - 休眠如何显示条件查询

我认为这是一个简单的问题,虽然我不知道如何解决。

在 spring/Hibernate 应用程序中,我需要显示条件执行的查询。

我知道我可以使用 show_sql 属性并使用 log4j 或任何其他日志记录框架记录查询,但我需要的是更高级别的日志记录。

我有这样的方法

我需要在执行criteria.list 之前显示将要执行的查询吗?

标准 api 中是否有任何实用程序类来显示我想要的查询?

提前谢谢

0 投票
2 回答
5766 浏览

java - Hibernate Criteria Query Join with Null 值

我有一个名为角色的表。每个角色可能属于一个组织。不属于组织的角色的值为 null。我想查找特定组织的所有角色或该组织在表中为空的位置。

映射文件有:

当查询运行时,我得到:

我发现如果我修改标准以仅在组织上查询空值,一切正常,但是一旦我查询一个值,我就会得到错误。

如何修改查询或映射文件以满足我的目标?