hibernate - 如何使用 Hibernate 中的序列作为 XML 映射中的属性

标签 hibernate sequence hibernate-mapping

如何在 Hibernate XML 映射中使用序列?

文档提到 <generator>元素。但是,我希望序列是一列而不是 ID。

最佳答案

我知道当将 Hibernate 与 Oracle 一起使用时,映射文件中的 id 定义如下:

<id name="id" column="item_id">
    <generator class="sequence">
        <param name="sequence">NAME_OF_YOUR_SEQUENCE</param>
    </generator>
</id>

您还可以将生成器类指定为“ native ”,如果您随后切换到自动递增 RDMS(例如 MySQL),这会很方便。然后该序列位在 MySQL 中将被忽略。

编辑: 只需重新阅读您的问题即可。我不认为 hibernate 处理非 id 列上的序列。我见过的一般方法是向表中添加触发器,但这不是一个很好的解决方案。

关于hibernate - 如何使用 Hibernate 中的序列作为 XML 映射中的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5082175/

相关文章:

java - 如何使用 JPA 和 Hibernate 的多个处理线程来持久化实体

hibernate - OutOfMemoryError : unable to create new native thread AWS

java - 数据库未返回 native 生成的标识值

r - 创建依赖于遵循有序序列的 ID 的虚拟变量

grails - 如何正确使用一对多关系中的mappedBy

java - 当由于外键约束而无法删除父级时,Hibernate 不会删除父级但会删除子级(或关系)

java - JPA @repository @Query 可以处理空实体吗?

f# - 在 F# 中从具有 N 个不同索引的序列中取出 N 个元素

php - 确定字符串是否包含数字序列

c# - 使用 HBM 文件将字典映射到 NHibernate 中的子表