您当前的位置: 首页 >  mybatis

梁云亮

暂无认证

  • 1浏览

    0关注

    1211博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

MyBatisPlus 自动填充功能

梁云亮 发布时间:2021-12-07 15:57:36 ,浏览量:1

在这里插入图片描述

实体类
@Getter
@Setter
@ToString
@Builder
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "tb_brand")
public class Brand implements Serializable {
    private static final long serialVersionUID = -7170949725470318638L;
    /**
     * 品牌编号
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 品牌名称
     */
    @TableField(value = "`name`")
    private String name;

    /**
     * 品牌LOGO
     */
    @TableField(value = "logo")
    private String logo;

    /**
     * 品牌描述
     */
    @TableField(value = "info")
    private String info;

    /**
     * 状态 1上架  2下架
     */
    @TableField(value = "`status`")
    private Integer status;

    /**
     * 创建时间
     */
    @TableField(value = "create_time",fill = FieldFill.INSERT)
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    @TableField(value = "update_time",fill = FieldFill.UPDATE)
    private LocalDateTime updateTime;
}

注:@TableField用来注解填充字段,其fill属性的取值可以是: 在这里插入图片描述

自定义元对象处理器接口
@Slf4j
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {

    @Override
    public void insertFill(MetaObject metaObject) {
        log.info("start insert fill ....");
        this.strictInsertFill(metaObject, "createTime", () -> LocalDateTime.now(), LocalDateTime.class);
    }

    @Override
    public void updateFill(MetaObject metaObject) {
        log.info("start update fill ....");
        this.strictUpdateFill(metaObject, "updateTime", () -> LocalDateTime.now(), LocalDateTime.class);
    }
}
测试

结果符合预期

关注
打赏
1665409997
查看更多评论
立即登录/注册

微信扫码登录

0.0392s