【发布时间】:2011-12-30 22:02:40
【问题描述】:
我正在使用
@TableGenerator(name="tab",initialValue=2,allocationSize=50)
在实体上并用
定义ID@Id
@GeneratedValue(generator="tab",strategy=GenerationType.TABLE)
private int id;
然而 Hibernate 仍然使用 0 作为 ID。
我不能使用 @GenericGenerator,因为 Jboss AS7 附带的 Hibernate4 不附带注释。
有简单的解决方案还是我必须编写自定义生成器?
【问题讨论】:
-
您没有任何部署描述符代码覆盖您的注释吗?您是在使用架构初始化还是在现有数据库上工作?
-
没有特定于数据库的部署描述符。我现在正在使用
并通过 import.sql 使用一些示例数据。 -
您确定在这些数据中没有任何插入到表生成器所在的表中?您是否尝试在空数据库上调用代码以让 Hibernate 在执行 import.sql 之前生成所有表?
-
参见stackoverflow.com/questions/3433724/…(我也遇到了同样的问题——我想使用hibernate SERIAL主键,但hibernate一直在为id插入0——将其设置为链接描述的内容,现在我的插入与 postgres 一起使用)
标签: java hibernate jpa jboss generator