【发布时间】:2017-06-04 14:09:29
【问题描述】:
目前我有三个表:Company、Group、Person。
这三张表是通过Company和Group是一对多连接的,Group和Person是一对多的。
在所有三个类(Company.java、Group.java、Person.java)中,我都以这种方式编写了自增唯一 ID:
@Id
@Column(name = "id")
@GeneratedValue
private int id;
然后我按以下顺序实例化所有三个类:Company、Group、Person。
将这些对象保存到我的数据库后,我注意到表中的 id 有问题。
显然,不是按照 1、2、3、4 等顺序增加 Company 的 id;它在 1、4、7、10...
在同样的逻辑中,Group 的 id 为 2、5、8、11...
我应该怎么做才能防止@GeneratedValue 计数器在三个不同的表之间共享?我应该使用其他或不同的标签吗?
谢谢。
【问题讨论】:
标签: java mysql hibernate auto-increment