首页 > 其他分享 >mybatis-plus自动填充功能

mybatis-plus自动填充功能

时间:2022-10-03 15:33:08浏览次数:61  
标签:java 填充 private Date plus mybatis import com public

如果需要用到自动填充功能,比如自动填充数据的新增日期,修改日期。先在config包下新增一个配置文件MyMetaObjectHandler

package com.xzit.config;

import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.reflection.MetaObject;
import org.springframework.stereotype.Component;

import java.time.LocalDateTime;
import java.util.Date;

@Slf4j
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {

    @Override
    public void insertFill(MetaObject metaObject) {
        log.info("start insert fill ....");
        this.strictInsertFill(metaObject, "createTime", () -> new Date(), Date.class); // 起始版本 3.3.3(推荐)
    }

    @Override
    public void updateFill(MetaObject metaObject) {
    }
}

然后在实体类里想要自动填充的字段上面加上

 @TableField(fill = FieldFill.INSERT)

注解即可

package com.xzit.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 
 * @TableName member
 */
@TableName(value ="member")
@Data
public class Member implements Serializable {
    /**
     * 
     */
    @TableId(type = IdType.AUTO)
    private Integer id;

    /**
     * 会员姓名
     */
    private String memberName;

    /**
     * 会员等级
     */
    private Integer level;

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

    /**
     * 是否删除
     */
    private Integer deleted;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}

 

标签:java,填充,private,Date,plus,mybatis,import,com,public
From: https://www.cnblogs.com/zengyu1234/p/16750593.html

相关文章

  • 使用mybatis plus常见错误
    错误1:​​代码生成器依赖和mybatis依赖冲突​​启动项目时报错如下2021-12-0313:33:33.927ERROR7228---[main]o.s.b.d.LoggingFailureAnalysisReporter......
  • mybatis plus通过java代码进行权限等全局控制
    在mapper.xml中调用java静态方法,并且传递一些参数在静态方法中进行sql拼接,可以用于用户权限管理、数据权限管理等等一、静态方法拼接sql,可以调用缓存中的用户权限进......
  • MyBatis-Plus修改数据,会不会把其他字段置为null
    前两天在用MyBatis-Plus写了一张单表的增删改查,在写到修改的时候,就突然蹦出一个奇怪的想法。MyBatis-Plus的BaseMapper中有两个关于修改的方法。如下:intupdateById(@Par......
  • h5:vue3 + ts + vite + vuex + axios + vant4 + scss + postcss+mockjs+element-plus
    模板地址:https://gitee.com/zhang_meng_lei/mobile-template-h5-vue3/tree/master安装element-plus:yarnaddelement-plus(目前已导入但未实现代码)按需导入:https://el......
  • MybatisPlus学习之MyBatisX插件比代码生成器还好用的哦
    一、MyBatisX的作用:1.​​xml​​​跳转2.生成代码3.重置代码4.JAP提示跟代码生成器比较:代码生成器生成文件还有controller等文件,而mybatsx没有,但是代码生成器生成的mapper......
  • Mybatis入门
    一、Mybatis简介1、MyBatis历史MyBatis是一个封装了jdbc的持久层框架,最初是Apache的一个开源项目iBatis,2010年随着开发团队转投GoogleCode旗下,iBatis3.x正式更名为M......
  • Spring整合Mybatis连接MySQL数据库配置 异常 情景再现
    Spring整合Mybatis连接MySQL数据库配置情景再现注意点一:数据库Table表字段和Entity实体类属性名不匹配解决:方法一:开启下划线转大驼峰命名mybatis:configurati......
  • MyBatis
    ​*本人刚刚学完MyBatis,于是想浅显的总结一下。如有错误,麻烦各位大佬们在评论区指出,谢谢。*最开始认识MyBatis这个单词,是在学习MySQL的时候看到的。那个时候完全不知......
  • MyBatis
    MyBatis1、搭建MyBatis1.1环境配置与工程<dependencies><!--Mybatis核心--><dependency><groupId>org.mybatis</groupId><artifactId>my......
  • zeroMemory 其作用是用0来填充一块内存区域
    ZeroMemory是一个计算机函数,由美国微软公司的软件开发包SDK中的一个宏。其作用是用0来填充一块内存区域。声明voidZeroMemory(PVOIDDestination,SIZE_TLength);参数......