SpringBoot + mybatis 多字段更新(不为空判断)的解决办法

SpringBoot + mybatis 多字段更新(不为空判断)的解决办法

需求:在多个字段需要更新时,需要判断字段是否为空,为空的字段无需更新

解决办法:

在Mapper文件中使用trim 代替 if,如下

 <update id="updateUserById" parameterType="com.example.demo.entity.UserEntity">
    UPDATE user
    <trim prefix="set" suffixOverrides=",">
      <if test="userName != null"> userName = #{userName},</if>
      <if test="UpdateTime != null"> UpdateTime = #{UpdateTime },</if>
      <if test="userPassword != null"> userPassword = #{password},</if>
      <if test="status != null"> status = #{status},</if>
    </trim>
   WHERE id = #{id,jdbcType=VARCHAR}
  </update>
  

将set标签换成·<trim prefix="set"></tirm>
标签中suffixOverrides=","的意思是最后一个去掉逗号

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值