Java JPA Hibernate,如何在创建时验证和在更新时忽略验证

Java JPA Hibernate,如何在创建时验证和在更新时忽略验证,java,hibernate,spring-boot,jpa,Java,Hibernate,Spring Boot,Jpa,我拥有以下实体: @Entity @Table(name = "bookings") public class Booking { @Null @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id") private Long id; @Null @Column(name = "column1", columnDefinition = "V

我拥有以下实体:

@Entity
@Table(name = "bookings")
public class Booking {


    @Null
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "id")
    private Long id;

    @Null
    @Column(name = "column1", columnDefinition = "VARCHAR(25) DEFAULT 'CREATED'")
    private String column1;

    //the rest of the fields....
}
这是一个简单的spring启动项目,规则是在创建新行时不应该有第1列数据(因此它使用值“CREATED”),但是在行更新上,我想将值更改为“ENDED

有没有办法让Hibernate在创建新行时只进行验证,而在更新行时忽略验证?

看一看

@在执行实体管理器持久化操作之前执行PrePersist 实际执行或级联。此调用与 坚持操作

@在数据库更新操作之前执行预更新

      @PrePersist
      protected void onCreate() {
        column1 = "CREATED";
      }

      @PreUpdate
      protected void onUpdate() {
        column1 = "ENDED";
      }