SpringBoot JPA自动设置创建时间、修改时间

SpringBoot JPA自动设置创建时间、修改时间

Laughing
2021-12-18 / 0 评论 / 1,498 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2021年12月18日,已超过1126天没有更新,若内容或图片失效,请留言反馈。

JPA提供了审计功能,用于设置创建者、创建时间、修改者、修改时间等参数。
创建时间、修改时间很好理解,就是当前时间,但是创建者、修改者一般都是通过上下文信息获取的,由于我这边是接口里面使用,未使用创建者、修改者,所以先介绍一下创建时间、修改时间的使用。
添加依赖那些巴拉巴拉的就不啰嗦。

创建实体

@Getter
@Setter
@ToString
@Entity
@Table(name = "ARAPDiscountRecord")
@EntityListeners(AuditingEntityListener.class)
public class ARAPDiscountRecordEntity implements Serializable {

    @CreatedDate
    @Column(name = "timestamp_createdon")
    private Timestamp timestampCreatedon;

    @LastModifiedDate
    @Column(name = "timestamp_lastchangedon")
    private Timestamp timestampLastchangedon;

}

@CreatedDate注解用于标识创建时间。
@LastModifiedDate注解用于标识修改时间。
实体类添加@EntityListeners(AuditingEntityListener.class)标识启动审计。

启动审计

再启用或者配置类上添加@EnableJpaAuditing启动审计。

@EnableJpaAuditing
@SpringBootApplication
public class DemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

这样的话,每次创建数据,系统会自动赋值timestampCreatedon列,修改数据时,系统会自动赋值timestampLastchangedon字段。

0

评论 (0)

取消