问题标签 [hibernate-criteria]
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.
java - 复合 PK 字段的分离标准?
我有一个包含 3 列作为主键的表。代码和映射如下:
复合键的类
表类
休眠xml映射
所有这一切都很好。现在,我需要编写 DetachedCriteria 查询来获取特定的 ResultCurrentState 对象/记录。我尝试了这样的方法,但它不起作用(我不知道是否将此复合 ID 视为嵌套属性):
如果有人可以帮助我编写适当的标准,我将不胜感激。
谢谢。
java - 关联对象的休眠条件
有一个类“Item”,它有一些关联的类,称为 Vehicle、Vmodel、Category、ItemName、Brand、SizeModel。每个类都有属性 id 和名称(例如 Vehicle 类、“vid”和“vname”)。项目类有项目代码。
此外,我需要从给定的示例 Item 对象(称为“ sItem
”)中获取 Item 对象,该对象等于我的示例 item 对象的属性和我的对象的关联对象属性。这是我的代码
我参考了这个(15.6 部分和该部分中的最后一个示例代码)。
执行上述代码时,发生错误(org.hibernate.QueryException:无法解析属性:vmodel of:Entity.Vehicle)。请任何人让我知道问题出在哪里以及我应该在哪里检查。我的所有映射和其他配置类都是使用 Netbeans IDE 创建的。
hibernate - 何时使用 Hibernate 投影?
我对 Hibernate 的预测和标准有点困惑。何时使用预测以及何时使用标准?
hibernate - 计算 Hibernate SQLProjection 中聚合列的排名
我正在尝试编写一个查询来根据聚合列计算排名列。该查询是作为 Hibernate Criteria 查询一部分的 SQLProjection。这是我尝试过的:
当我在 SQL 投影中使用非聚合列时,子选择起作用并且我得到了预期的结果,只有在我引入max()
错误时才会发生错误。
这会引发一个相当不具体org.hibernate.exception.GenericJDBCException
的消息“ Could not execute query
”。
日志显示:
我无法从上述错误消息中自己查明查询中的问题,谁能给我一些关于如何更正我的查询的指示?
更新:
我现在根据下面的 axtavt 的回答使用以下 sqlProjection:
Hibernate生成的SQL是:
我现在收到错误:
如果我删除max({alias}.powerRestarts)
并用常量或替换它max(s.powerRestarts)
,则查询有效(但显然没有正确计算排名)。
{alias}
在这个查询中使用似乎有问题sqlProjection
- 可能与嵌套子查询有关 - 任何人都可以帮忙吗?
谢谢你。
hibernate - Hibernate Criteria Transformers.aliasToBean 没有填充正确的值
我正在尝试通过加入我的实体类来创建 BO
我得到 100 个空 BO,即所有属性都为 null 我的 BO 如下
......
当我删除行 aliasToBean 并遍历 Object[] 时,我可以看到获取的正确值请指导我...
hibernate - 在 MVC 架构中我应该在哪里使用 Hibernate Criteria?
我正在开发一个使用 Spring MVC 和 Hibernate 的 CRM 项目,但我不知道使用 hibernate 标准的最佳位置是什么。我想使用休眠条件,因为我们在表示层上具有搜索功能,用户可以根据许多不同的参数以不同的方式进行搜索。有时我们只需要 ID,有时我们需要属性的子集,有时我们需要连接多个表等。因此,构建一个结构化的标准,如 hibernate 的标准,而不是从表示中传递参数列表、顺序、所需参数和搜索限制层到数据层,可以清理代码。但是,我知道在表示层使用休眠是不正确的,因为它违反了 MVC 架构。而且我真的不认为复制hibernate的标准是正确的方法。我可以想到3种方法:
在业务层创建了十几个方法,每个类型的搜索请求一个,并根据情况从表示层调用这些函数中的每一个。这些方法中的每一个基本上,除了将参数传递给相应的 DAO 方法之外什么都不做,该方法将创建 SQL 查询(或标准对象)并从数据库中检索数据。在这种方法中,我最终会得到数百个方法,这些方法除了将参数传递给 DAO 之外什么都不做。
在表示(或业务层)中创建一个类似于 Hibernate 的 Criteria 类的类。然后在表现层用搜索参数初始化这个对象并将它传递给DAO。然后 DAO 基于这个对象创建一个休眠的条件对象。这种方法涉及复制hibernate的标准类。
在表现层启动 Hibernate 的 Criteria 类并将其传递给 DAO 以获取搜索结果。
你能告诉我哪个是最好的方法吗?
谢谢
java - 自定义集合的休眠查询
我有一个带有自定义集合类型的休眠映射。
爪哇:
hbm.xml:
HistoryMapType
是 interfaceHistoryMap
和 implements的实现UserCollectionType
。
此地图有一个getCurrent()
返回当前的方法PolicyStatus
。
现在我需要进行查询以获取所有具有特定 PolicyStatus 的 Policy 对象作为当前对象。
就像是:
我知道这不起作用,因为“当前”不是关联映射。我应该如何解决这个问题?我已经读过我应该改用 HQL,但不知道如何以及是否可能。
任何指针表示赞赏!
谢谢
hibernate - Hibernate如何将Criteria转换为HQL?
我对条件查询有疑问。
在另一种方法中,我使用 HQL 查询来删除数据库中的一些对象。查询有效。
实际上,在另一种方法中,我执行获取对象的条件查询。当我获取对象时,它们不会同步到数据库。
那么 1. 如何在 roder 中同步此条件查询以获取 REAL 对象?2. 如果 1. 不可能,我想将 Criteria 查询转换为 HQL
这是我的标准查询:
和 HQl 转换的查询不起作用
谢谢!
hibernate - 集合表的休眠条件查询?
我有以下实体
以下是我的行动
我想获取具有特定操作集的规则列表我正在尝试这个
但是得到 org.hibernate.MappingException: collection was not an association: exception..
编辑 因此,在 jbrookover 的指导下,我尝试使用名为 RuleAction 的 Action 包装类,并且能够建立 oneToMany 关系,我还修改了查询,如下所示
但这将返回给我所有具有 EMAIL 或 POSTAL 的规则,但我想要的是所有具有 EMAIL 和 POSTAL 的规则请帮助我修改查询。
hibernate - 如何为集合集编写 Hibernate 查询
我有以下实体
和语言实体是
我的语言表如下所示
我想选择所有姓名以 A 开头并且知道 java 和 C 的员工,为此我正在尝试关注
语言集在哪里
我可以看到我的尝试是完全错误的......我是新来的休眠有人可以帮我解决它..