java - hibernate中的GenerateValue策略

标签 java hibernate

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

我应该使用哪种类型来满足此要求?我可以这样做吗?或者在所有情况下 hibernate 都只从数字 0 开始?

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

最佳答案

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

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

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

关于java - hibernate中的GenerateValue策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21734212/

相关文章:

java - Android 中的模型

java - 物主量词中的回溯

java - JPA QL 用于选择多对多关系的非拥有方?

java - "org.hibernate.HibernateException: Illegal attempt to associate a collection with two open sessions"即使上下文是线程

java - 使用 Hibernate 4.1 进行 SchemaExport 期间出现 Hsqldb 错误

java - 在 sessionFactory 初始化之前更改实体模式名称

java - 如何用java编写一个非常简单的登录系统

java - 有什么办法可以固定 window 吗?

java - 如何保护 TextEncryptor 在 spring boot 中使用的密码

java - Oracle 序列与 Hibernate