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)