准备

1、建立user表

DROP TABLE IF EXISTS user;CREATE TABLE user
(id BIGINT(20) NOT NULL COMMENT '主键ID',name VARCHAR(30) NULL DEFAULT NULL COMMENT '姓名',age INT(11) NULL DEFAULT NULL COMMENT '年龄',email VARCHAR(50) NULL DEFAULT NULL COMMENT '邮箱',PRIMARY KEY (id)
);

2、插入样例数据

INSERT INTO user (id, name, age, email) VALUES
(1, 'Jone', 18, 'test1@baomidou.com'),
(2, 'Jack', 20, 'test2@baomidou.com'),
(3, 'Tom', 28, 'test3@baomidou.com'),
(4, 'Sandy', 21, 'test4@baomidou.com'),
(5, 'Billie', 24, 'test5@baomidou.com');
方式一:数据库级别(工作中不允许你修改数据库)

1、在表中新增字段 create_time, update_time

2、测试插入方法,我们需要先把实体类同步!

原实体类

@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {private Long id;private String name;private Integer age;private String email;
}

加入

private Date createTime; //java.util.Date
private Date updateTime;
3 、更新查看结果即可
更新前

执行更新操作(更新id为5的age)

@Test
void testUpdate(){User user = new User();user.setId(5L);user.setAge(20);userMapper.updateById(user);
}

更新后

方式二:代码级别

1、删除数据库的默认值、更新操作!

2、实体类字段属性上需要增加注解

// 字段添加填充内容
@TableField(fill = FieldFill.INSERT)
private Date createTime;
@TableField(fill = FieldFill.INSERT_UPDATE)
private Date updateTime;

3、编写处理器来处理这个注解即可!

@Slf4j
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {@Overridepublic void insertFill(MetaObject metaObject) {log.info("insertFill start ...");this.setFieldValByName("createTime",new Date(),metaObject);this.setFieldValByName("updateTime",new Date(),metaObject);}@Overridepublic void updateFill(MetaObject metaObject) {log.info("updateFill start ...");this.setFieldValByName("updateTime",new Date(),metaObject);}
}
4 、测试插入
        
5 、测试更新、观察时间即可!

MybatisPlus自动填充(建立、更新时间)相关推荐

  1. MyBatis-plus自动填充功能之自动填充时间

    MyBatis-plus自动填充功能之自动填充时间 一.前期工作 二.自动填充 2.1 数据库级别 2.2 代码级别 在实际操作过程中,我们并不希望创建时间.修改时间这些来手动进行,而是希望通过自动化 ...

  2. mybatis 自动填充无效_开发小知识-mybatis-plus自动填充与读写分离

    mybatis-plus 自动填充 说明 我们在设计表结构的时候,往往会额外添多如下几个字段 create_time[表字段]-- createTime[实体字段] : 创建时间 update_tim ...

  3. MyBatis-Plus——自动填充功能实现

    文章目录 MyBatis-Plus--自动填充功能 1.什么是自动填充 2.数据库层面实现 3.编程实现(推荐) MyBatis-Plus--自动填充功能 1.什么是自动填充 有些表中会有更新时间up ...

  4. MyBatisPlus自动填充

    MyBatisPlus自动填充 项目中经常会遇到一些数据,每次都使用相同的方式填充,例如记录的创建时间,更新时间等. 我们可以使用MyBatis Plus的自动填充功能,完成这些字段的赋值工作; (1 ...

  5. mybatis-plus自动填充(创建时间\修改时间)

    编辑pojo中公共的basePojo类(继承关系) package com.jt.pojo;import com.baomidou.mybatisplus.annotation.FieldFill; ...

  6. MyBatis-Plus自动填充字段(创建时间、修改时间、uuid等)

    字段填充器 配置需要自动填充的字段,字段名采用驼峰命名规则 @Component public class MpMetaObjectHandler implements MetaObjectHandl ...

  7. Mybatis-Plus自动填充的实现示例

    在常用业务中有些属性需要配置一些默认值,MyBatis-Plus提供了实现此功能的插件.在这里修改user表添加 create_time 字段和 update_time 字段,在User类中添加对应属 ...

  8. 尚医通——后台搭建——MybatisPlus自动填充和乐观锁

    目录标题 自动填充和乐观锁 1.更新操作 2.自动填充 1.1数据库修改 1.2实体类修改 1.3实现元对象处理器接口 3.乐观锁 3.1场景 4.乐观锁实现流程 4.1修改实体类 4.2创建配置文件 ...

  9. android studio 安卓新建类如何自动填充作者、时间、备注等信息

    之前有实习生问我:你新建的类,怎么自动填充你姓名.联系方式.创建时间.作用这些的? 下面几步记录一下,给需要的朋友: 设置里面,file-->setting-->Editor-->f ...

  10. Mybatis-plus自动填充功能因版本(3.0.5/3.4.2)不同导致的问题:metaObject.setValue()和this.setFieldValByName() 方法的关系

    首先查看两个版本this.setFieldValByName(MetaObjectHandler类中的方法)的源码 Mybatis-plus(3.0.5): public interface Meta ...

最新文章

  1. 《Redis入门指南(第2版)》一第2章 准备
  2. js中replace的用法
  3. 通用的MIME类型:application/octet-stream
  4. Python 输出HTML实体字符(#x***转html,html符号乱码,中文乱码)
  5. 话说模式匹配(1) 什么是模式?
  6. PHP设计模式——职责链模式
  7. 【Python】django安装
  8. 网吧如何控制远程服务器,怎样在网吧控制一台远程的电脑
  9. 我的世界服务器怎么改无限力量,我的世界无限力量效果指令,我的世界怎么用命令方块做无限的效果...
  10. 34、CSS高频前端面试题之CSS基础
  11. 积分第一中值定理与伏汝兰尼(Froullani)积分
  12. html密码域的type属性,查看网页黑点密码 将type=password中password修改成为text
  13. Matlab实现图像阈值分割
  14. 【无标题】Hadoop HA文件参数配置和HA启动
  15. 怎么从微信群聊中引流?如何从群聊进行引流?微信群怎么引流
  16. c语言镶嵌循环,讲解C++的do while循环和循环语句的嵌套使用方法
  17. ThinkPad E420升级改造过程
  18. python网络编程 赵宏_2018年Python爱好者社区历史文章合集(作者篇)
  19. 现在学校应用较多的计算机学籍管理系统,计算机基础知识选择题500个
  20. java怎么打印星期,在任何日期打印出星期几

热门文章

  1. 飞机大战Python全代码 + 图片
  2. 5.Apache Kylin 构建 第一步报错 Container complete event for unknown container
  3. 十进制数与其他进制数转换方法及原理
  4. Win10共享打印机所需要的设置(无需密码访问实现打印机共享)
  5. java课程设计-音乐播放器,基于java的音乐播放器设计.doc
  6. python默认安装目录在哪_怎么查看python的安装目录
  7. Cisco Packet Tracer交换机间相同VLAN通信
  8. 精致又小巧的3款黑科技软件,一旦使用,难以割舍
  9. Windows10操作系统共享文件夹给VMWare虚拟机Ubuntu18.04操作系统使用
  10. 微服务A读配置中心报Could not locate PropertySource错误