[@PreUpdate 和 @PrePersist] 用于为相应的生命周期事件指定回调方法。 给一张表加上create_date, update_date两个字段,想实现自动保存,更新这两个字段 只能用来注解 方法(且无返回 无参数) 而不能注解 属性
package sun.rain.amazing.javax.anno.domain.mapped; import lombok.Data; import javax.persistence.*; import java.util.Date; /** * @author sunRainAmazing */ @MappedSuperclass @Data public class BaseMappedSuperclass { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Integer id; @Version private Integer version; @Temporal(TemporalType.TIMESTAMP) @Column(name = "created_at", nullable = false, updatable = false) private Date createdAt; @Temporal(TemporalType.TIMESTAMP) @Column(name = "updated_at", nullable = false) private Date updatedAt; @PrePersist public void onCreate() { createdAt = updatedAt = new Date(); } @PreUpdate public void onUpdate() { this.updatedAt = new Date(); } }