MongoDB idea cakephp mtu原理 stream ios4 Minjs bootstrap中文api文档 kb转mb java解析json数组 docker查看所有容器 查看nodejs版本 oracle数据库创建表空间 flutter ui构建工具 python编程教程 python正则匹配空格 java在线教程 java环境搭建 filejava 怎么配置java环境 java当前时间 java怎么编程 黑客攻防实战入门 通达信金融终端官网 福昕阅读器绿色版 地下城怎么双开 mathcad15 调试js 大势至usb控制系统 pr脱机文件怎么恢复 ps二寸照片制作教程 java数组转字符串 数码管字体 excel并排查看 电子书籍下载 笔记本摄像头软件 truecrypt中文版 战网更新不动 标准色 93
当前位置: 首页 > 学习教程  > 编程语言

自动填充 addTime,updateTime等字段

2020/12/5 10:14:05 文章标签:

之前我们项目经理对我说过一段话,大概的意思:每个表都应该包括add_time,update_time,deleted字段,会有极大的用处! 我们用到最多的就是mybatis-plus,下面我就拿它来接单介绍一下使用 新建一个user表 创建它的实体类 …

之前我们项目经理对我说过一段话,大概的意思:每个表都应该包括add_time,update_time,deleted字段,会有极大的用处!

 我们用到最多的就是mybatis-plus,下面我就拿它来接单介绍一下使用

新建一个user表


创建它的实体类

@Data
@TableName("user")
public class User implements Serializable {

    private static final long serialVersionUID = 9099266107829856068L;
    @TableId(type = IdType.UUID)
    private String id;
    
    private String name;
    
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime addTime;
    
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;

}

注解的含义:

@TableId(type = IdType.UUID)  :自动生成id(uuid格式无“-”)
@TableField(fill = FieldFill.INSERT) : 被标识的字段执行insert插入语句时自动插入操作
@TableField(fill = FieldFill.INSERT_UPDATE) :被标识的字段执行insert和update时时自动插入操作

 

配置文件 

@Component
public class MyMetaObjectHandler implements MetaObjectHandler {

    @Override
    public void insertFill(MetaObject metaObject) {
        this.setInsertFieldValByName("addTime", LocalDateTime.now(),metaObject);
        this.setInsertFieldValByName("updateTime",LocalDateTime.now(),metaObject);
    }

    @Override
    public void updateFill(MetaObject metaObject) {
        this.setUpdateFieldValByName("updateTime",LocalDateTime.now(),metaObject);
    }

}

注意:时间字段要用 LocalDateTime.表示,用Date会有时间不匹配的问题
 

测试:

更新该数据

ok!!!


本文链接: http://www.dtmao.cc/news_show_450183.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?