【问题标题】:Jpa id generation strategy, @id default is auto , mysql default is IDENTITY, but I found that a hibernate_sequence table was generated, why?jpa id生成策略,@id默认是auto,mysql默认是IDENTITY,但是我发现生成了一个hibernate_sequence表,为什么?
【发布时间】:2020-02-10 15:14:45
【问题描述】:

jpa id生成策略,@id默认是auto,mysql默认是IDENTITY,但是我发现生成了一个hibernate_sequence表,为什么?

【问题讨论】:

    标签: mysql hibernate jpa


    【解决方案1】:

    “组合”Hibernate 5 和 MySQL 时会出现此问题。请参阅this article 了解更多信息。

    使用下面的映射来解决这个问题。

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO, generator = "native")
    @GenericGenerator(name = "native", strategy = "native")
    private Integer id;
    

    【讨论】:

      【解决方案2】:

      自动策略,休眠4是身份,5是表

      【讨论】:

        【解决方案3】:

        你可以这样做 应用程序.yml

        spring:
          jpa:
            hibernate:
              use-new-id-generator-mappings: false
        

        【讨论】:

        • 欢迎来到 SO!当你回答一个主要是代码的问题时,请稍微解释一下你的答案。在这种情况下,答案就更多了,所以尽量展示自己的优势。
        猜你喜欢
        • 2014-05-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-12-04
        • 1970-01-01
        • 1970-01-01
        • 2012-12-24
        相关资源
        最近更新 更多