mybatis plus中MetaObjectHandler 同一管理创建时间和更新时间


在实体类中需要创建时间和更新时间,自动填充的字段加上注解

/**
* 创建时间
*/
@TableField(fill = FieldFill.INSERT)
private Date gmtCreate;
/**
* 更新时间
*/
@TableField(fill = FieldFill.INSERT_UPDATE)//INSERT_UPDATE表示 插入和更新
private Date gmtModified;

实现自动填充创建时间和更新时间(没有这一步数据库不会自动插入)

/**
 * 实现填充器
 */
@Slf4j
@Component
public class MyHandler implements MetaObjectHandler {
    //插入
    @Override
    public void insertFill(MetaObject metaObject) {
        log.info("插入添加时间...");
        this.setFieldValByName( "gmtCreate",new Date(),metaObject);
        this.setFieldValByName( "gmtModified",new Date(),metaObject);
    }
    //更新
    @Override
    public void updateFill(MetaObject metaObject) {
        log.info("修改更新时间...");
        this.setFieldValByName("gmtModified",new Date(),metaObject);
    }
}

相关