加这个注解,可以创建,可以修改,也可以创建与修改时:
@TableField(fill = FieldFill.INSERT_UPDATE)//创建与修改时自动填充 private LocalDateTime updateTime;
然后编写一个类,实现MetaObjectHandler接口重写insert和update方法例如:
mport com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; import com.rome.backend.common.BaseContext;//自己编写的类可以用ThrowLcal import org.apache.ibatis.reflection.MetaObject; import org.springframework.stereotype.Component; import java.time.LocalDateTime; @Component public class DateConfig implements MetaObjectHandler { /** * 使用mp做添加操作时候,这个方法执行 * @param metaObject */ @Override public void insertFill(MetaObject metaObject) { //设置属性值 属性名 属性值 this.setFieldValByName("createTime",LocalDateTime.now(),metaObject); this.setFieldValByName("updateTime",LocalDateTime.now(),metaObject); this.setFieldValByName("createUser", BaseContext.getCurrentId(),metaObject); this.setFieldValByName("updateUser",BaseContext.getCurrentId(),metaObject); } /** * 使用mp做修改操作时候,这个方法执行 * @param metaObject */ @Override public void updateFill(MetaObject metaObject) { this.setFieldValByName("updateTime",LocalDateTime.now(),metaObject); this.setFieldValByName("updateUser",BaseContext.getCurrentId(),metaObject); } }
标签:updateTime,metaObject,填充,setFieldValByName,BaseContext,时间,LocalDateTime,创建人,impo From: https://www.cnblogs.com/romablog/p/17279358.html