java - 如何在 Hibernate 中进行基于自定义查询的集合映射?

标签 java xml hibernate mapping hql

我有一个对象,它被映射为一组对象,非常简单。然而,我真正想做的是为该映射设置一些标准。这是当前的映射:

    <set name="ops" inverse="true" cascade="all, delete-orphan">
        <key column="cityblock_id" on-delete="cascade"/>
        <one-to-many class="com.tamedtornado.data.Operation"/>
    </set>

现在,我不想只获取所有关联的操作,而是只想获取尚未完成、已完成或其他任何操作。 Hibernate 文档对此非常安静,尽管一些旧的论坛帖子已经向我展示了一些。您显然可以使用 sql-query 标签,但这也不是我想要做的。

是否可以使用 HQL 查询来执行此操作?我只想通过一个简单的查询来缩小结果范围,并有一些集合映射,例如 active_ops 和 Completed_ops 等。

干杯, 杰森

最佳答案

6.2. Collection mappings在 Hibernate 文档中,您会发现可以在任何集合映射上使用 WHERE 子句:

where(可选)指定检索或删除集合时要使用的任意 SQL WHERE 条件(如果集合应仅包含可用数据的子集,则很有用)

您说您想使用 HQL 查询,但我认为这是不可能的。但由于您只需在映射中指定一个简单的 WHERE 子句,因此 HQL 和“真正的”SQL 之间并没有太大区别。

关于java - 如何在 Hibernate 中进行基于自定义查询的集合映射?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/432347/

相关文章:

java - 在 Eclipse 中导入 HoloEverywhere 和 ActionbarSherlock 的属性复制

python - 使用 ElementTree 提取子 XML,忽略命名空间

java - 有没有办法让两个mappedBy ="something"?

hibernate - 在 GORM 中查询关联的子查询

java - 使用新主键克隆现有对象

JavaFX:绑定(bind)到没有条形大小的滚动 Pane 宽度和高度

java - 归一化 DOM 没有归一化效果相同

java - 从倒数计时器返回值

java - Swing 组件具有自动换行和有限宽度以及 HTML 支持

java - JaxB 编码(marshal)拆收器覆盖文件内容