1

我想为我的 postgres 数据库使用自定义序列,但在将记录插入表时,它总是使用默认序列“hibernate_sequence”的 nextval。我在定义实体时使用下面的代码。

 @Id
    @SequenceGenerator(name = "address_generator", sequenceName = 
    "address_id_seq", allocationSize = 1)
    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = 
    "address_generator")
     private Long id;

以下是我在 application.properties 文件中定义的属性。

SQL 方言使 Hibernate 为所选数据库生成更好的 SQL

    spring.jpa.properties.hibernate.dialect = 
       org.hibernate.dialect.PostgreSQLDialect
       spring.jpa.database-platform=org.hibernate.dialect.PostgreSQLDialect
   spring.jpa.generate-ddl=true 

Hibernate ddl auto(创建、创建删除、验证、更新)

 spring.jpa.hibernate.ddl-auto = update
   spring.jpa.show-sql=true

我也尝试过其他生成策略,如 GenerationType.IDENTITY,GenerationType.AUTO,问题是一样的。

我正在使用 Spring Boot 版本作为 2.1.3.RELEASE。

4

0 回答 0