mybatis-plus mapper中foreach循環(huán)操作代碼詳解(新增或修改)
.循環(huán)添加
接口處:
分別是 void 無返回類型 ;有的話是(resultType)返回類型,參數(shù)類型(parameterType) list ,
如:
在mapper文件中分別對應ID,參數(shù)類型和返回類型。
循環(huán)處理,如下:
<insert id="insertPack" parameterType="java.util.List"> insert into t_ev_bu_pack ( PACK_CODE, BIN, PACK_PROD_TIME, CREATED_DATE, CREATED_BY, BATTERY_CLASS, SUPPLIER_NAME, TERMINAL_USER ) values <foreach collection="list" item="item" index="index" open="" close="" separator=","> ( #{item.PACK_CODE}, #{item.BIN}, #{item.PACK_PROD_TIME}, now(), #{item.CREATED_BY}, #{item.BATTERY_CLASS}, #{item.SUPPLIER_NAME}, #{item.TERMINAL_USER} ) </foreach> </insert>
由于沒有返回類型,只有方法ID和參數(shù)。
循環(huán)更新:
<update id="updatePack" parameterType="java.util.List"> <foreach collection="list" item="item" index="index" open="" close="" separator=";"> update t_ev_bu_pack <trim prefix="SET" suffixOverrides=","> <!-- BIN = #{BIN}, --> <if test="item.TERMINAL_USER != null and item.TERMINAL_USER != ''"> TERMINAL_USER = #{item.TERMINAL_USER}, </if> <if test="item.SUPPLIER_NAME != null and item.SUPPLIER_NAME != ''"> SUPPLIER_NAME = #{item.SUPPLIER_NAME}, </if> <if test="item.PACK_PROD_TIME != null and item.PACK_PROD_TIME != ''"> PACK_PROD_TIME = #{item.PACK_PROD_TIME}, </if> <if test="item.BATTERY_CLASS != null and item.BATTERY_CLASS != ''"> BATTERY_CLASS = #{item.BATTERY_CLASS}, </if> LAST_UPDATED_TIME = now(), LAST_UPDATED_BY = #{item.LAST_UPDATED_BY} </trim> where PACK_CODE = #{item.PACK_CODE} </foreach> </update>
貌似有點區(qū)別,insert只需要循環(huán)取值就行了,update則更復雜點因為SET 后面又‘,'號分隔,這個update 是循環(huán)所有數(shù)據(jù),每條數(shù)據(jù)都有一個ID(即根據(jù)主鍵ID修改所以foreach在最外層),而insert只需要循環(huán)要插入的值即可(只需要循環(huán)傳入的數(shù)據(jù)即可);
到此這篇關于mybatis-plus mapper中foreach循環(huán)操作代碼詳解(新增或修改)的文章就介紹到這了,更多相關mybatis-plus foreach循環(huán)內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
httpclient staleConnectionCheckEnabled獲取連接流程解析
這篇文章主要為大家介紹了httpclient staleConnectionCheckEnabled獲取連接流程示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-11-11SpringBoot內置tomcat參數(shù)調優(yōu)的實現(xiàn)
springboot內置了tomcat, 并給我們設置了默認參數(shù), 我們怎么樣修改springboot內置的tomcat參數(shù),本文就詳細的來介紹一下,感興趣的可以了解一下2023-09-09Centos 7 安裝 OpenJDK 11 兩種方式及問題小結
這篇文章主要介紹了Centos 7 安裝 OpenJDK 11 兩種方式,第一種方式使用yum安裝,第二種方式使用tar解壓安裝,每種方法給大家介紹的非常詳細,需要的朋友可以參考下2021-09-09