jpa自动填充时间字段
公共类有创建时间,修改时间字段,需求是子类继承这个类进行新增和修改时会自动插入时间字段。
我根据网上资料逐步进行如下;
1、公共类开启审计监听@EntityListeners({AuditingEntityListener.class})
在公共类头上加上注解。
2、springboot项目启动类加上@EnableJpaAuditing开启审计功能,然后子类继承了这个公共类。
但是,文档添加测试时发现时间不会自动填充,于是我查了很久,在这篇文章找到了解决问题。简而言之,就是在这个公共类上加一个@MappedSuperclass注解,关于这个注解的用法我也贴出来了:
1.标注为@MappedSuperclass的类将不是一个完整的实体类,他将不会映射到数据库表,但是他的属性都将映射到其子类的数据库字段中。
2.标注为@MappedSuperclass的类不能再标注@Entity或@Table注解,也无需实现序列化接口。
加上后实测,自动填充有效。
SpringDataJPA自动填充时间字段遇到的Bug
最新推荐文章于 2022-11-30 11:42:51 发布