解决mybatis update并非所有字段需要更新问题

作者:cn_TongTong 时间:2022-12-09 10:20:55 

mybatis update并非所有字段需要更新

mybatis update

需求:更新字段作为参数,未更新字段不传入

解决办法


<update id="updateUser" parameterType="com.test.entity.User">
       update BS_USER
           <trim prefix="set" suffixOverrides=",">
               <if test="ACCOUNT != null">ACCOUNT=#{ACCOUNT},</if>
               <if test="NAME != null">NAME=#{NAME},</if>
               <if test="PROV != null">PROV=#{PROV},</if>
               <if test="FAILURE_TIME != null">FAILURE_TIME=#{FAILURE_TIME},</if>
           </trim>
       where USERID=#{USERID}
   </update>

将set标签换成<trim prefix="set"></tirm>

标签中suffixOverrides=","的意思是最后一个去掉逗号

mybatis update时遇到的问题

xml是这么写的


<update id="deleteAll"  parameterType="java.util.List" >  
   update cw_base_resident_house_ref a set state = 0
       where 1=1 and a.ID in
       <foreach item="item" collection="list" separator="," open="(" close=")" index="">
     #{item.refId}
   </foreach>
</update>

之后运行报错,就是返回的类型不对

解决mybatis update并非所有字段需要更新问题

原来是service和mapper里的类型错了,定义的是list,应该定义为int。

因为 update/delete,返回值是:影响的行数;无需指明resultClass;但如果有约束异常而删除失败,只能去捕捉异常。

来源:https://blog.csdn.net/qq_42931757/article/details/87789636

标签:mybatis,update,字段更新
0
投稿

猜你喜欢

  • C#实现开机自动启动设置代码分享

    2021-10-08 20:45:14
  • Javafx实现国际象棋游戏

    2021-07-21 18:39:47
  • C#使用winform简单导出Excel的方法

    2022-06-11 06:58:49
  • SpringBoot使用SensitiveWord实现敏感词过滤

    2023-09-06 19:35:21
  •  Java SE 面向对象编程的3个常用接口

    2023-01-14 06:42:32
  • c#使用资源文件的示例

    2022-05-11 00:39:39
  • Mybatis-Plus设置全局或者局部ID自增的实现

    2021-11-27 00:30:03
  • java线程池详解及代码介绍

    2023-09-16 07:21:57
  • Apache commons fileupload文件上传实例讲解

    2021-09-09 17:19:29
  • Java多线程通信:交替打印ABAB实例

    2022-04-08 06:57:28
  • Android自定义View实现钟摆效果进度条PendulumView

    2022-07-04 15:50:14
  • Java使用雪花id生成算法详解

    2023-11-18 21:58:49
  • SpringBoot实现单文件与多文件上传功能

    2023-03-22 23:44:11
  • C#实现对字符串进行大小写切换的方法

    2021-07-24 03:30:30
  • Spring JPA find单表查询方法示例详解

    2022-11-03 19:43:38
  • Java中Synchronized的用法解析

    2023-07-28 22:40:51
  • C#实现学生成绩管理系统

    2021-06-05 22:51:31
  • Android使用自定义属性实现图片自动播放滚动的功能

    2023-04-13 18:51:49
  • MyBatis整合Redis实现二级缓存的示例代码

    2022-02-06 15:41:24
  • 使用C#实现在屏幕上画图效果的代码实例

    2022-09-11 05:12:32
  • asp之家 软件编程 m.aspxhome.com