当前使用版本(必填,否则不予处理)
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.1</version>
</dependency>
该问题是如何引起的?(确定最新版也有问题再提!!!)
在使用日期自动填充功能的时候,更新日期不起作用。 引起原因是由于新版的配置不起作用,旧版的配置则无影响,可以正常使用 this.setFieldValByName("gmtModified", LocalDateTime.now(), metaObject);//暂时还用这个,下面两个新版方法,先查询后更新,字段不起作用 // this.strictUpdateFill(metaObject, "gmtModified", LocalDateTime.class, LocalDateTime.now()); // 起始版本 3.3.0(推荐) // this.strictUpdateFill(metaObject, "gmtModified", () -> LocalDateTime.now(), LocalDateTime.class); // 起始版本 3.3.3(推荐)
重现步骤(如果有就写完整)
对于new对象,然后赋值id,通过updateById(),可以正常更新gmt_modified字段。 但是如果从数据库先查询出记录,修改部分信息后再使用updateById(),gmt_modified字段不会更新。
报错信息
Comment From: miemieYaho
字段有值默认不覆盖
Comment From: okcgogogo
updateTime这个字段本来就是要在每次做了更新操作之后重新设置的。字段填充只针对于为空的字段没有意义,建议改下