【发布时间】:2013-09-14 16:45:52
【问题描述】:
我正在处理我们需要为每个实体使用序列的要求。
现在我创建了一个表hibernate_sequence,其列和值如下:
next_value | sequence_name
-----------|--------------
100000045 |
100050000 | ACCOUNT_SEQ
以下是我的hbm.xml 实体ACCOUNT 文件:
<generator class="org.hibernate.id.enhanced.SequenceStyleGenerator">
<param name="prefer_sequence_per_entity">true</param>
<param name="optimizer">none</param>
<param name="increment_size">1</param>
</generator>
但不知何故,我的插入使用了全局序列 ID,而不是使用为 ACCOUNT 定义的序列。有人可以指出我在这里做错了什么吗?
我确实参考了Steve answer for this question,但休眠文档并不清楚如何使用此功能。我们是否应该为每个实体创建一个单独的表(或)同一个表,每个实体具有不同的行,并使用一些定义明确的语法?
【问题讨论】:
-
您使用的是什么版本的 Hibernate?具体来说,您使用的版本是否支持“prefer_sequence_per_entity”?
-
@SteveEbersole:我使用的是休眠 4.0。我在休眠文档中找不到“prefer_sequence_per_entity”。这是可用的吗?如果是这样,您可以分享文档链接吗?
标签: hibernate persistence hibernate-4.x