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

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

mybatis update

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

解决办法


        update BS_USER
            
                ACCOUNT=#{ACCOUNT},
                NAME=#{NAME},
                PROV=#{PROV},
                FAILURE_TIME=#{FAILURE_TIME},
            
        where USERID=#{USERID}
    

将set标签换成

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

mybatis update时遇到的问题

xml是这么写的

	  
	   		 update cw_base_resident_house_ref a set state = 0
	        	where 1=1 and a.ID in
	        	
      				#{item.refId}
   				 
	

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

解决mybatis update并非所有字段需要更新问题_第1张图片

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

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

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

你可能感兴趣的:(解决mybatis update并非所有字段需要更新问题)