@TableField 自动填充 如数据库时间的自动更新

霄
2023-10-27 / 0 评论 / 84 阅读 / 正在检测是否收录...

实体类上的注解:

//插入时填充
@TableField(fill = FieldFill.INSERT)
private Date createTime;
//插入与更新都填充
@TableField(fill = FieldFill.INSERT_UPDATE)
private Date updateTime;

处理器的实现:

@Slf4j
@Component  
//继承MetaObjectHandler来实现填充
public class MyMetaObjectHandler implements MetaObjectHandler {

    //插入时的填充策略
    @Override
    public void insertFill(MetaObject metaObject) {
    log.info("start insert fill...");
        //三个参数为     //要设置的属性名字  值     metaObject
    this.setFieldValByName("createTime",new Date(),metaObject);
        this.setFieldValByName("updateTime",new Date(),metaObject);
    }
    //更新时的填充策略
    @Override
    public void updateFill(MetaObject metaObject) {
        log.info("start update fill...");
        this.setFieldValByName("updateTime",new Date(),metaObject);
    }
}
扫描二维码,在手机上阅读!
65

评论

博主关闭了当前页面的评论