解決mybatis?update并非所有字段需要更新問題
mybatis update并非所有字段需要更新
mybatis update
需求:更新字段作為參數(shù),未更新字段不傳入
解決辦法
<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>
之后運行報錯,就是返回的類型不對
原來是service和mapper里的類型錯了,定義的是list,應該定義為int。
因為 update/delete,返回值是:影響的行數(shù);無需指明resultClass;但如果有約束異常而刪除失敗,只能去捕捉異常。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
mybatis-plus?查詢傳入?yún)?shù)Map,返回List<Map>方式
這篇文章主要介紹了mybatis-plus?查詢傳入?yún)?shù)Map,返回List<Map>方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-12-12springboot?jpa?實現(xiàn)返回結果自定義查詢
這篇文章主要介紹了springboot?jpa?實現(xiàn)返回結果自定義查詢方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-02-02springcloud Zuul動態(tài)路由的實現(xiàn)
這篇文章主要介紹了springcloud Zuul動態(tài)路由的實現(xiàn),詳細的介紹了什么是Zuu及其動態(tài)路由的實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-11-11