Mybatis-plus自动填充碰都的问题总结

本文总结了Mybatis-plus在自动填充update_time和create_time时遇到的问题。更新时,由于数据库设置,create_time被更新,但update_time未更新,解决办法是使用this.setFieldValByName代替this.strictUpdateFill。删除时,逻辑删除无法自动填充,需要通过wrapper或sql注入器手动处理。在多数据源环境下,自动填充可能失效,解决方案需进一步研究。
摘要由CSDN通过智能技术生成

一、每次更新时,create_Time都会被更新,而update_time 反而没有更新

1. create_time都会被更新

数据库表create_time勾选了“根据当前时间戳更新”导致的。

 2. update_time 反而没有更新

参考:MybatisPlus更新删除操作时 updateTime自动填充无效_这个饕字怎么读的博客-CSDN博客

参考:mybatis plus中update_time字段未自动更新_王胖泽的博客-CSDN博客_mybatisplus updatetime

官方文档:

MetaObjectHandler提供的默认方法的策略均为:如果属性有值则不覆盖,如果填充值为null则不填充

也就是说当updateTime为null时,会自动填充;反之,则不会。

解决办法:

用 this.setFieldValByName 代替 this.strictUpdateFill。

二、删除时,没有更新update_time

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值