确认版本
首先确认你的项目中使用的 mybatis-plus 版本是 3.3.0 以下还是 3.3.0 以上(包含 3.3.0),在低版本和高版本中重写 MetaObjectHandler 方法的 insertFill 和 updateFill 的写法是不同的,比如下面示例:
@Bean
public MetaObjectHandler metaObjectHandler(){
return new MetaObjectHandler() {
@Override
public void insertFill(MetaObject metaObject) {
this.setFieldValByName("createdDate", new Date(), metaObject);
this.setFieldValByName("updatedDate", new Date(), metaObject);
}
@Override
public void updateFill(MetaObject metaObject) {
this.setFieldValByName("updatedDate", new Date(), metaObject);
}
};
}
这是使用 MyBatis-Plus 早期版本(在 3.3.0 之前)的自定义 MetaObjectHandler
实现。它使用 setFieldValByNa