您好,歡迎來到賦能網(wǎng)!

Mybati如何執(zhí)行批量操作

賦能網(wǎng) 2023-06-11 184

Mybatis常會(huì)出現(xiàn)批量操作,如批量查詢,批量插入,批量修改(replace into)。批量操作要比循環(huán)執(zhí)行效率提升很多,這里對(duì)mybatis的批量操作做一個(gè)總結(jié)講解。Mybatis常會(huì)出現(xiàn)批量操作,如批量查詢,批量插入,批量修改(replace into)。批量操作要比循環(huán)執(zhí)行效率提升很多,這里對(duì)mybatis的批量操作做一個(gè)總結(jié)講解。

Foreach

foreach:foreach的主要用在構(gòu)建in條件中,它可以在SQL語句中進(jìn)行迭代一個(gè)集合。foreach元素的屬性主要有 item,index,collection,open,separator,close。它是批量操作的核心標(biāo)簽,下面都是foreach在不同場景的應(yīng)用和寫法。

List-string

select id, accid, key1, key1createtime key1CreateTime, key2, key2createtime key2CreateTime

from m_acc_keys where accid in <foreach item=”item” index=”index” collection=”paramIds” open=”(” separator=”,” close=”)”>

#{item} </foreach>

注意:你可以傳遞一個(gè) List 實(shí)例或者數(shù)組作為參數(shù)對(duì)象傳給 MyBatis。當(dāng)你這么做的時(shí)候,MyBatis 會(huì)自動(dòng)將它包裝在一個(gè) Map 中,用名稱在作為鍵。List 實(shí)例將會(huì)以“l(fā)ist”作為鍵,而數(shù)組實(shí)例將會(huì)以“array”作為鍵。

List-Object這是一個(gè)批量保存(插入或修改)的例子

replace:會(huì)根據(jù)主鍵和唯一索引判斷該記錄是否存在,存在就刪除在插入(修改),不存在就插入(insert)。

數(shù)組還是一個(gè)查詢的例子

多重循環(huán)colids和proids是兩個(gè)平級(jí)的數(shù)據(jù)。


批量插入id自增長Mybatis在版本3.4.x以上支持批量插入綁定自增長id,常用版本3.4.1。

Mybati如何執(zhí)行批量操作

對(duì)應(yīng)的maven支持

Mapper.xml寫法

本文鏈接:

本文章“Mybati如何執(zhí)行批量操作”已幫助 184 人

免責(zé)聲明:本信息由用戶發(fā)布,本站不承擔(dān)本信息引起的任何交易及知識(shí)產(chǎn)權(quán)侵權(quán)的法律責(zé)任!

本文由賦能網(wǎng) 整理發(fā)布。了解更多培訓(xùn)機(jī)構(gòu)》培訓(xùn)課程》學(xué)習(xí)資訊》課程優(yōu)惠》課程開班》學(xué)校地址等機(jī)構(gòu)信息,可以留下您的聯(lián)系方式,讓課程老師跟你詳細(xì)解答:
咨詢熱線:4008-569-579

如果本頁不是您要找的課程,您也可以百度查找一下: