我正在尝试使用休眠的生成值策略在表中添加序列号。我的表格栏中已经有数字1和2,现在我想从3开始数字生成。

我应该使用哪种类型来满足此要求?我可以那样做吗?还是在所有情况下都仅从数字0开始休眠?

@GeneratedValue (strategy = GenerationType.TABLE)
public void setId(int id) {
  this.id = id;
}

最佳答案

如果使用TABLE策略,它将从存储在用于ID生成的表中的当前值开始,该值对应于实体。

如果使用SEQUENCE策略,它将从序列的当前值开始。

如果使用了IDENTITY策略,它将向数据库询问下一个ID(该列应自动递增),并且数据库不应返回用过的区域ID。

10-07 12:56
查看更多