项目中数据库记录都是会记录创建时间,更新时间等。我们可以自己在插入时设置值,但是每次insert,update都要在代码中设置,比较麻烦。
这里使用mybatisPlus的自动填充。
表字段:
代码:
在@TableField(fill = FieldFill.INSERT),FieldFill指定新增还是更新时自动填充。
实现MetaObjectHandler 接口,填充你需要填充的字段值。
@Slf4j @Component public class MybatisPlusAutoFillHandler implements MetaObjectHandler { @Override public void insertFill(MetaObject metaObject) { log.info("insert fill---------"); this.strictInsertFill(metaObject, "createAt", LocalDateTime::now, LocalDateTime.class); this.strictInsertFill(metaObject, "updateAt", LocalDateTime::now, LocalDateTime.class); } @Override public void updateFill(MetaObject metaObject) { log.info("update fill---------"); this.strictUpdateFill(metaObject, "updateAt", LocalDateTime::now, LocalDateTime.class); } }
测试:
新增一条数据,只填入username、password字段,查看数据库记录,前面是没有自动填充的记录,id=5是自动填充的记录
标签:mybatisPlus,填充,自动,LocalDateTime,metaObject,class,fill From: https://www.cnblogs.com/junnnnnnnn/p/16857252.html