1.创建一个类继承MetaObjectHandler,继承之后会重写里面的两个方法
@Component //这个注解是把这个类交于容器管理
public class MyMetaObjectHandler implements MetaObjectHandler {
@Override
public void insertFill(MetaObject metaObject) {
// 添加填充的列名
this.strictInsertFill(metaObject,"gmtCreate", ()-> LocalDateTime.now(),LocalDateTime.class);
this.strictInsertFill(metaObject,"gmtModified", ()-> LocalDateTime.now(),LocalDateTime.class);
this.strictInsertFill(metaObject, "checktime", () -> LocalDateTime.now(), LocalDateTime.class);
this.strictInsertFill(metaObject, "requesttime", () -> LocalDateTime.now(), LocalDateTime.class); // 起始版本 3.3.3(推荐)
this.strictInsertFill(metaObject,"status",() -> 3,Integer.class);
this.strictInsertFill(metaObject,"tai",() -> 0,Integer.class);
}
@Override
public void updateFill(MetaObject metaObject) {
// 修改填充的列名
this.strictInsertFill(metaObject,"gmtModified", ()-> LocalDateTime.now(),LocalDateTime.class);
this.strictUpdateFill(metaObject, "checktime", () -> LocalDateTime.now(), LocalDateTime.class); // 起始版本 3.3.3(推荐)
}
}
1.使用的mp的版本在3.3以上
2.如果是数字,在()->写数字
3.第一个重写的方法是添加的时候的执行,第二个是修改的时候执行
2.在对应的实体类使用注解
这是添加的注解

修改的注解
@TableField(fill = FieldFill.UPDATE)
本文介绍如何通过实现MyMetaObjectHandler类来自动填充MyBatis Plus中的字段,包括gmtCreate、gmtModified等,并提供了具体实现代码及实体类注解示例。
1590

被折叠的 条评论
为什么被折叠?



