MyBatis Plus 属性自动填充值

需求

为了在执行新增,更新操作时,自动更新createTime,updateTime,无需手动输入时间

解决方案

在createTime属性上添加@TableField(fill = FieldFill.INSERT)

在updateTime属性上添加@TableField(fill = FieldFill.UPDATE)

@TableField(fill = FieldFill.INSERT)private Date updateTime;@TableField(fill = FieldFill.UPDATE)private Date updateTime;


在属性中添加完@TableField后,还需要额外创建一个填充处理器

@Componentpublic class MyMetaObjectHandler implements MetaObjectHandler {    /**     * 插入时间填充策略     *     * @param metaObject     */    @Override    public void insertFill(MetaObject metaObject) {        this.strictInsertFill(metaObject, "createTime", Date.class, new Date());        this.strictInsertFill(metaObject, "createDt", Date.class, new Date());    }    /**     * 更新时间填充策略     *     * @param metaObject     */    @Override    public void updateFill(MetaObject metaObject) {        this.strictUpdateFill(metaObject, "updateTime", Timestamp.class, new Timestamp(System.currentTimeMillis()));        this.strictUpdateFill(metaObject, "updateDt", Date.class, new Date());    }}
发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章