MybatisPlus MetaObjectHandler 配置了没起作用

  • 环境
  • SpringBoot 2.2.6.RELEASE
  • Mybatis-Plus 3.3.1.tmp
  • JDK 1.8

1.添加自动填充的配置

public class MybatisPlusObjectHandler implements MetaObjectHandler{
@Override
public void insertFill(MetaObject metaObject) {
System.out.println("***************************");
System.out.println("insert fill");
System.out.println("***************************");

Object gmtCreate = getFieldValByName("gmtCreate", metaObject);

//判断表中有没有字段,有的话执行,没有就不做资源的无谓开销
boolean gmtCreate1 = metaObject.hasSetter("gmtCreate");//判断表中有没有字段,有的话执行,没有就不做资源的无谓开销
if(gmtCreate1){
System.out.println("gmtCreate="+gmtCreate);
if(gmtCreate==null){
//LocalDateTime当前时间
// LocalDateTime now = LocalDateTime.now();
setFieldValByName("gmtCreate",getDateTimeOfTimestamp(System.currentTimeMillis()),metaObject);
}
}

}

@Override
public void updateFill(MetaObject metaObject) {
System.out.println("************************");
System.out.println("update fill");
System.out.println("************************");

setFieldValByName("gmtModified",getDateTimeOfTimestamp(System.currentTimeMillis()),metaObject);
}

}

并配置到springbean里面

 

 

2.实体类添加注解

 

 只要这三步即可,

注意: MybatisPlusObjectHandler 类上不必加@Component标签,不然报错!

 

posted @   狗艳艳花  阅读(5175)  评论(1编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示