Mybatis-plus自动填充

在数据库中添加两个字段,设置不允许为空

Mybatis-plus自动填充

实体类:

//创建时间,插入数据时操作
@TableField(fill = FieldFill.INSERT)
private Date create_time;
//更新时间,插入,更新时操作
@TableField(fill = FieldFill.INSERT_UPDATE)
private Date update_time;

设置处理器处理操作:

//交给spring管理
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {
    //使用mp实现添加操作,这个方法会执行,metaObject元数据(表中的名字,表中的字段)
    @Override
    public void insertFill(MetaObject metaObject) {
        //根据名称设置属性值,名称一定要对上
        this.setFieldValByName("create_time",new Date(),metaObject);
        this.setFieldValByName("update_time",new Date(),metaObject);
    }
    //使用mp实现修改操作,这个方法会执行
    @Override
    public void updateFill(MetaObject metaObject) {
        this.setFieldValByName("update_time",new Date(),metaObject);
    }
}

测试:

@Test
public void addUser(){
    User user=new User();
    user.setUsername("yuriki");
    userMapper.insert(user);
}
@Test
public void updateUser(){
    User user=new User();
    user.setId(1);
    userMapper.updateById(user);
}
上一篇:Myabtis-plus乐观锁


下一篇:自动填充功能