首页 > 其他分享 >MybatisPlus的一些坑

MybatisPlus的一些坑

时间:2024-02-29 12:00:28浏览次数:29  
标签:set MybatisPlus getId TaskErrorInfo 一些 NULL eq

当使用MybatisPlus更新数据的时候,比如updateById(),update()。如果被更新的对象中的字段是NULL,默认会忽略掉这个为NULL的字段。

解决方案有两个:

1. 使用注解

主要是@TableField注解中的属性:updateStrategy属性。但是不推荐这样做,这样做会很危险!!

2. 使用构造器更新数据

建议使用构造器来实现

 taskErrorInfoService.lambdaUpdate()
                    .eq(TaskErrorInfo::getId, item.getId())
                    .eq(TaskErrorInfo::getVersion, item.getVersion())
                    .set(TaskErrorInfo::getState, state)
                    .set(TaskErrorInfo::getUpdateTime, LocalDateTime.now())
                    .update();

 

标签:set,MybatisPlus,getId,TaskErrorInfo,一些,NULL,eq
From: https://www.cnblogs.com/zhaoleiFree/p/18043196

相关文章

  • 由POJ1821得出的一些dp优化技巧
    比如for(inti=1;i<=m;i++){ for(intj=0;j<=n;j++){ dp[i][j]=dp[i-1][j]; } for(intl=max(1,s[i]-l[i]+1);l<=s[i];l++){for(intr=s[i];r<=min(n,l+l[i]-1);r++){dp[i][r]=max(dp[i][r],dp[i-1][l-1]+p[i]*(r-l+1));......
  • 一些典型的计数
    这里将会记录一些典型的计数。图计数无向图计数显然,\(n\)个点的无向图个数应该为\(2^{\binom{n}{2}}\)。\(n\)个点\(m\)条边无向图计数不妨设\(g(n,m)\)表示\(n\)个点\(m\)条边的无向图个数,显然有\[g(n,m)=\dbinom{\binom{n}{2}}{m}\]设\(f(n,m)\)表示......
  • 【置顶】一些(惨痛的)教训
    STL的size()函数返回的是unsignedint类型,不要printf("%lld\n",xxx.size()),本地运行没有问题,但是UB,CF上面会WrongAnswerontest#1。CodeforcesRound929(Div.3)C题,由于使用了printf("%lld\n",s.size());,不停Wa#1,拖延19分19秒,最后CFRated-85。......
  • GitHub上整理的一些工具(平台工具)
    平台工具(都是开源的好东东哦)Redmine/Trac:项目管理平台Jenkins/Jira(非开源):持续集成系统(ApacheContinuum,这个是Apache下的CI系统,还没来得及研究)Sonar:代码质量管理平台git,svn:源代码版本控制系统GitLib/Gitorious:构建自己的GitHub服务器gitbook:https://www.gitbook.io/写书......
  • GitHub上整理的一些工具(Web 前端相关)
    Web服务器性能/压力测试工具/负载均衡器http_load:程序非常小,解压后也不到100Kwebbench:是Linux下的一个网站压力测试工具,最多可以模拟3万个并发连接去测试网站的负载能力ab:ab是apache自带的一款功能强大的测试工具Siege:一款开源的压力测试工具,可以根据配置对一个WEB......
  • 关于输出的一些测试
    各种输出方式的比较代码1:#include<bits/stdc++.h>#definerep(i,a,b)for(inti=a;i<=b;++i)usingnamespacestd;signedmain(){ freopen("1.out","w",stdout); rep(i,1,2000000)printf("%d\n",i); return0;}开O2运行时间:3.379secon......
  • C++11新特性的一些用法举例①
    //字符串字面量/*常用:1.原始字符串字面量---括号内保持原样输出---没有转义字符,如\n不再是换行,而是直接输出字面量\nR"(str)";实例:R"(aa\a"b"bb)";//print:aa\a"b"bb注意:constchar*s1=R"foo(HelloWorld)foo";打印结果:HelloWorld;----//&qu......
  • spring boot 中使用MybatisPlus的自动填充createTime和updateTime
    首先需要在实体类的字段上加上注解,并且将类型更改为LocalDateTime@TableField(fill=FieldFill.INSERT)@JsonInclude(value=JsonInclude.Include.NON_NULL)@JsonFormat(pattern="yyyy-MM-ddHH:mm:ss")privateLocalDateTimecreateTime;@TableFie......
  • 面试题以及一些问题概述
    1数据库三大范式是什么数据库的三大范式是指关系数据库设计中的三个规范化级别,用于规范化数据库中的数据结构,提高数据的一致性和减少数据冗余。这三大范式分别是:1.第一范式(1NF):要求数据库表中的每个字段都是原子性的,不可再分。也就是说,每个字段中的数据不能包含多个值或多个属......
  • PCB &电路&电路板的外设接口的一些猜测
    以下只是我的猜测,毕竟初入硬件,错误的话请见谅。1.PCB上的电路怎么形成:https://zhuanlan.zhihu.com/p/395279669:即,附膜--印刷电路--光感保护--蚀刻去铜--剩下的铜即为电路2.我在想:    以上是PCB的设计方式,那对应的UART硬件针脚是怎么和PCB一起用的?    CPU......