gpt4 book ai didi

java - 使用 GenerationType.TABLE 在重新启动时 hibernate 重复主键

转载 作者:搜寻专家 更新时间:2023-10-31 08:04:23 25 4
gpt4 key购买 nike

我们遇到了一个问题,我们有使用 GenerationType.TABLE 生成主键的事件子类,当我们重新启动服务器时,我们会收到重复的主键错误。

我们正在使用 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;

我们没有指定 allocationSize,所以我们使用默认值。 hibernate 序列表确实增加了,但它似乎在重新启动时重用了已经使用过的 ID。

最佳答案

尝试 GenerationType.AUTO 或 SEQUENCE。AUTO 可以通过 hibernate 魔法工作,但 SEQUENCE 应该在数据库中创建一个序列,足够有趣,它将用于获取唯一 ID。您使用的是哪个 SQL Server?

关于java - 使用 GenerationType.TABLE 在重新启动时 hibernate 重复主键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2806689/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com