mybatis-plus填充功能,自动设置值

1、引入依赖

复制代码
        <!--        mybatis-plus-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.4.1</version>
        </dependency>

2、编写entity

复制代码
 @Data
@AllArgsConstructor
@TableName("user")
@NoArgsConstructor
public class User  {
/**
     * 创建人名称
     */
    @TableField(fill = FieldFill.INSERT)
    private String createUserName;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;

    /**
     * 修改人名称
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private String updateUserName;

    /**
     * 修改时间
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date updateTime;
}

3、编写处理器

复制代码
@Component
@Slf4j
public class AutoInsertMetaObjectHandler  implements MetaObjectHandler {

    @Override
    public void insertFill(MetaObject metaObject) {
        log.info("start insert fill ....");
        //setFieldValByName(String fieldName, Object fieldVal, MetaObject metaObject)
        this.setFieldValByName("createTime",new Date(),metaObject);
        this.setFieldValByName("createUserName","测试1",metaObject);
        this.setFieldValByName("updateTime",new Date(),metaObject);
        this.setFieldValByName("updateUserName","测试1",metaObject);
    }

    @Override
    public void updateFill(MetaObject metaObject) {
        log.info("start insert update ....");
        this.setFieldValByName("updateTime",new Date(),metaObject);
        this.setFieldValByName("updateUserName", "测试2",metaObject);
    }

}

4、测试

官网:自动填充功能 | MyBatis-Plus (baomidou.com)

相关推荐
luoluoal4 分钟前
Java项目之基于ssm的QQ村旅游网站的设计(源码+文档)
java·mysql·mybatis·ssm·源码
luoluoal10 分钟前
Java项目之基于ssm的学校小卖部收银系统(源码+文档)
java·mysql·毕业设计·ssm·源码
计算机学长felix22 分钟前
基于springboot的“嗨玩旅游网站”的设计与实现(源码+数据库+文档+PPT)
spring boot·毕业设计
言小乔.40 分钟前
202526 | 消息队列MQ
java·消息队列·消息中间件
懒懒小徐1 小时前
消息中间件面试题
java·开发语言·面试·消息队列
转转技术团队1 小时前
加Log就卡?不加Log就瞎?”——这个插件治好了我的精神
java·后端
小杜-coding2 小时前
黑马头条day02
java·spring boot·spring·spring cloud·java-ee·maven·mybatis
谦行2 小时前
前端视角 Java Web 入门手册 5.5:真实世界 Web 开发——控制反转与 @Autowired
java·后端
qw9492 小时前
JVM:JVM与Java体系结构
java·开发语言·jvm
啊QQQQQ2 小时前
设计模式-原型模式
java·设计模式·原型模式