美文网首页
Mybatis-Plus自动填充

Mybatis-Plus自动填充

作者: c_gentle | 来源:发表于2020-09-05 08:53 被阅读0次
    8 mp实现自动填充.png

    1.数据库表中添加自动填充字段

    在User表中添加datetime类型的新的字段 create_time、update_time

    2.实体上添加注解

    @Data
    
    public class User {
        ......
            
        @TableField(fill = FieldFill.INSERT)
        private Date createTime;
        //@TableField(fill = FieldFill.UPDATE)
        @TableField(fill = FieldFill.INSERT_UPDATE)
        private Date updateTime;
    11
    }
    

    3.实现元对象处理器接口

    元对象就是数据库的原始数据
    注意:不要忘记添加 @Component 注解

    package com.atguigu.mybatisplus.handler;
    import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
    import org.apache.ibatis.reflection.MetaObject;
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    import org.springframework.stereotype.Component;
    import java.util.Date;
    @Component
    public class MyMetaObjectHandler implements MetaObjectHandler {
        private static final Logger LOGGER = LoggerFactory.getLogger(MyMetaObjectHandler.class);
        @Override
        public void insertFill(MetaObject metaObject) {
            LOGGER.info("start insert fill ....");
            this.setFieldValByName("createTime", new Date(), metaObject);
            this.setFieldValByName("updateTime", new Date(), metaObject);
        }
        @Override
        public void updateFill(MetaObject metaObject) {
            LOGGER.info("start update fill ....");
            this.setFieldValByName("updateTime", new Date(), metaObject);
        }
    }
    

    相关文章

      网友评论

          本文标题:Mybatis-Plus自动填充

          本文链接:https://www.haomeiwen.com/subject/vvyxektx.html