Dou*_*kem 6 java sql sql-server orm hibernate
我们遇到了一个问题,我们有使用GenerationType.TABLE生成主键的Event子类,当我们重新启动服务器时,我们会遇到重复的主键错误.
我们正在使用SQL Server和Hibernate版本3.5.1-Final.
这是我们的Hibernate注释的样子:
@Entity
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
public abstract class Event {
@Id
@GeneratedValue(strategy = GenerationType.TABLE)
private long eventID;
Run Code Online (Sandbox Code Playgroud)
我们没有指定allocationSize,因此我们使用默认值.hibernate序列表确实递增但似乎在重新启动它重用已经使用过的ID.
尝试 GenerationType.AUTO 或 SEQUENCE。AUTO 可以通过 hibernate magic 来工作,但有趣的是,SEQUENCE 应该在数据库中创建一个序列,它将用来获取唯一的 ID。您使用的是哪个 SQL Server?