1. 在数据库中添加create_time与update_time两个字段
2. 在实体类中进行自动填充属性添加注解
@TableField(fill = FieldFill.INSERT)
private Date createTime;
@TableField(fill = FieldFill.INSERT_UPDATE)
private Date updateTime;
3. 创建类,实现接口metaObjectHandler,并实现里面的方法。
注意一定要添加@Component//交给spring管理
@Component//交给spring管理
public class MymetaObjectHandler implements MetaObjectHandler {
//使用mp实现添加的时候,这个方法执行
@Override
public void insertFill(MetaObject metaObject) {
this.setFieldValByName("createTime",new Date(),metaObject);
this.setFieldValByName("updateTime",new Date(),metaObject);
}
//使用mp实现修改的时候,使用这个方法执行。
@Override
public void updateFill(MetaObject metaObject) {
//修改的时候只需要改变修改时间。
this.setFieldValByName("updateTime",new Date(),metaObject);
}
}
4.添加,更新测试
//添加测试
@Test
void insert(){
User user=new User();
user.setName("李四");
user.setAge(20);
user.setEmail("283982938");
userMapper.insert(user);
}
//更新值
@Test
void update(){
User user=new User();
user.setId(1377253670734831617L);
user.setAge(130);
int row=userMapper.updateById(user);
System.out.println(row);
}