mybatis對于list更新sql語句的寫法說明
更新時間:2022年08月19日 09:32:49 作者:iamapsycho
這篇文章主要介紹了mybatis對于list更新sql語句的寫法說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
對于list更新sql語句的寫法
批量更新
<update id="updateConfigureNames" parameterType="java.util.List">
?? ?<foreach collection="list" item="item" index="index" open=""
?? ??? ?close="" separator=";">
?? ??? ?update configure
?? ??? ?<set>
?? ??? ??? ?configure_name=#{item.configureName}
?? ??? ?</set>
?? ??? ?where id = #{item.id,jdbcType=VARCHAR}
?? ?</foreach>
</update>在使用foreach的時候最關鍵的也是最容易出錯的就是collection屬性,該屬性是必須指定的,但是在不同情況下,該屬性的值是不一樣的
主要有一下3種情況:
- 如果傳入的是單參數(shù)且參數(shù)類型是一個List的時候,collection屬性值為list
- 如果傳入的是單參數(shù)且參數(shù)類型是一個array數(shù)組的時候,collection的屬性值為array
- 如果傳入的參數(shù)是多個的時候,我們就需要把它們封裝成一個Map了,當然單參數(shù)也可
mybatis動態(tài)更新sql語句
注意參數(shù)是實體
<!--更新-->
<update id="updateOne" parameterType="com.entity.GovernmentDetail">
? ? UPDATE GOVERNMENT_DETAIL
? ? <trim prefix="set" suffixOverrides=",">
? ? ? ? <if test="UNIT_TYPE!=null">unitType=#{unitType},</if>
? ? ? ? <if test="PLAT_CODE!=null">plateCode=#{plateCode},</if>
? ? ? ? <if test="DESCRIP!=null">descrip=#{descrip},</if>
? ? ? ? <if test="BUSINESS_GUID!=null">businessGuid=#{businessGuid},</if>
? ? ? ? <if test="HOT_LINE!=null">hotLine=#{hotLine},</if>
? ? ? ? <if test="LINE_ADRESS!=null">lineAdress=#{lineAdress},</if>
? ? ? ? <if test="EXTEND1!=null">extend1=#{extend1},</if>
? ? ? ? <if test="EXTEND2!=null">extend2=#{extend2},</if>
? ? </trim>
? ? WHERE ID=#{id}
</update>以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
SpringMVC實現(xiàn)Validation校驗過程詳解
這篇文章主要介紹了SpringMVC實現(xiàn)Validation校驗過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-11-11
Spring為singleton?bean注入prototype?bean
這篇文章主要介紹了Spring為singleton?bean注入prototype?bean,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-07-07
IDEA整合Dubbo+Zookeeper+SpringBoot實現(xiàn)
初學者,想自己動手做一個簡單的demo,本文主要介紹了IDEA整合Dubbo+Zookeeper+SpringBoot實現(xiàn),需要的朋友們下面隨著小編來一起學習學習吧2021-06-06
使用Java打印數(shù)字組成的魔方陣及字符組成的鉆石圖形
這篇文章主要介紹了使用Java打印數(shù)字組成的魔方陣及字符組成的鉆石圖形,可作為一些CLI程序界面的基礎部分,需要的朋友可以參考下2016-03-03

