PosgreSQL 抱怨 null 'id'

问题描述 投票:0回答:1

我正在使用 Java 17 和 Spring Boot 3 创建一些基本的 BE,当我尝试插入这种类型的条目时

@Entity
@Table(name = "companies")
public class Company {

    @Id
    @GeneratedValue(strategy = GenerationType.UUID)
    public UUID id;

    @Column(nullable = false, unique = true)
    public String name;
    public String icon;
}

使用以下 SQL 插入

insert into companies(icon, name) values ('icon.png', 'UPV')

它抱怨说

[23502] ERROR: null value in column "id" of relation "companies" violates not-null constraint Detail: Failing row contains (null, UPV, icon.png).

这些表是由 JPA 在本地运行的 Docker 容器中自动创建的,以防万一。知道会发生什么吗?

spring-boot hibernate jpa spring-data-jpa
1个回答
0
投票

您还必须声明将用于生成实体 UUID 的

GenericGenerator

@Entity
@Table(name = "companies")
public class Company {

    @Id
    @GeneratedValue(strategy = GenerationType.UUID)
    @GenericGenerator(name = "UUID", type = org.hibernate.id.uuid.UuidGenerator.class)
    @Column(name = "id")
    private UUID id;

    @Column(nullable = false, unique = true)
    public String name;
    public String icon;
}
© www.soinside.com 2019 - 2024. All rights reserved.