在程式中封裝了乙個list集合物件,然後需要把該集合中的實體插入到資料庫中,專案使用了spring mvc +mybatis的配置,使用mybatis批量插入。
主要是用foreach標籤,它可以在sql語句中進行迭代乙個集合。
foreach元素的屬性主要有 item,index,collection,open,separator,close。
item表示集合中每乙個元素進行迭代時的別名,
index指 定乙個名字,用於表示在迭代過程中,每次迭代到的位置,
open表示該語句以什麼開始,
separator表示在每次進行迭代之間以什麼符號作為分隔 符,
close表示以什麼結束,
在使用foreach的時候最關鍵的也是最容易出錯的就是collection屬性,該屬性是必須指定的。
1.如果傳入的是單引數且引數型別是乙個list的時候,collection屬性值為list
2.如果傳入的是單引數且引數型別是乙個array陣列的時候,collection的屬性值為array
舉例:一:批量插入乙個集合
方法:public long insertpricehistorylist(listlist) ;
引數:listlist;
sql語句:
insert into
`tmall_price_history_copy`
(`sid`,
`third_request_history_sid`,
`shopinprosid`,
`shopinsku`,
`tmallnum_iid`,
`shopinprodetailsid`,
`tmallskuid`,
`tmallskuproperties`,
`propertiesname`,
`price`,
`createtime`,
`operatetime`,
`tmallpricetime`,
`status`,
`memo`,
`type`
) values(#,
#,#,
#,#,
#,#,
#,#,
#,#,
#,#,
#,#,#)
二:批量刪除list集合
方法:
public long deletepricehistorylist(listpricehistorylist) ;
引數:listpricehistorylist;
sql語句:
delete
from
`tmall_price_history`
where
`sid` in#
mybatis之批量插入
foreach標籤的使用 foreach的主要用在構建in條件中,它可以在sql語句中進行迭代乙個集合。foreach元素的屬性主要有 item,index,collection,open,separator,close。item表示集合中每乙個元素進行迭代時的別名,index指 定乙個名字,用於表...
MyBatis批量插入和批量新增。
曾在學習redis時,技術牛畫了乙個資料庫的發展圖,redis最終發展竟是關係型資料庫 你恨不得想說個oh 就像ibatis發展到mybatis,最後發展方向極可能是hibernate,這個.create table batch options test id varchar2 50 not nul...
mybatis批量插入,批量更新
insert into t ingco trade lithium electric product product no,li e product no,transpor report number,msds,transpor report number path,msds path,un tes...