【问题标题】:How to define custom sequence generator used for Id (promary) in JPA?如何在 JPA 中定义用于 Id(主要)的自定义序列生成器?
【发布时间】:2023-01-30 04:40:16
【问题描述】:

我的应用程序使用 Jakarta EE JPA 将数据保存到数据库。 出于性能原因,应用程序必须生成自定义(编码)序列。 默认情况下,JPA 似乎使用某种序列为实体生成 ID。

如何用 Java 编码的客户序列生成器覆盖默认序列生成器?

【问题讨论】:

    标签: jpa jakarta-ee java-ee-6


    【解决方案1】:

    这就是您使用自定义序列的方式:

    @Id
    @SequenceGenerator(name = "pet_seq", 
            sequenceName = "pet_sequence", 
            initialValue = 1, allocationSize = 20)
    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "pet_seq")
    @Column(name = "id", nullable = false)
    private Long id;
    

    在这种情况下,它将使用 pet_sequence 而不是默认值。您也可以阅读this article 以更好地理解这个主题。

    【讨论】:

      猜你喜欢
      • 2018-04-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-21
      • 1970-01-01
      相关资源
      最近更新 更多