java - 生成高于特定值的 ID

标签 java mysql hibernate jpa auto-increment

在我的 JPA+Hibernate+MySQL 应用程序中,我有一个像这样的实体:

@Entity
public class Room {

    @Id
    @GeneratedValue
    private long id;

    // columns....
}

这工作得很好,但生成的 id 值,正如预期的那样,是 1、2、3 等。但是,用户将看到这个 ID,并且客户希望 id 更长(因为他发现它看起来更好),从应用程序发布之日起。

我怎样才能改变 Hibernate 或 MySQL 的 ID 生成(我不知道现在实际上是谁在做),以便 ID 总是高于某个值,例如1亿?

最佳答案

有多种方法。例如,您可以创建自定义 hibernate 生成器。但最简单的方法是简单地告诉 MySQL 从哪里开始计数:

ALTER TABLE tbl AUTO_INCREMENT = 100000;

关于java - 生成高于特定值的 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5393711/

相关文章:

Java 与Python 的recv() 网络函数的等价

mysql - MariaDB 时间戳不是更新日期

mysqli 查询需要门户中的 2 个参数

Hibernate:限制一对多查询

java - ConcurrentSkipListSet内部工作原理,与TreeSet的区别

java - Android:在JAR中添加资源文件

java - 使用 jsf 进行多重 CRUD 的最佳策略

hibernate - JPA/hibernate 排序集合 @OrderBy 与 @Sort

java - 采用 spring-session 后迁移 HttpSessionListener

mysql - 数据库对外关系