在 MyBatis 中進行批量插入操作可以通過使用 insertList
方法或者 foreach
標簽來實現。
insertList
方法:<insert id="batchInsert" parameterType="java.util.List">
insert into table_name (column1, column2, column3)
values
<foreach collection="list" item="item" separator=",">
(#{item.property1}, #{item.property2}, #{item.property3})
</foreach>
</insert>
在 Java 代碼中調用該方法時,傳入一個 List 包含多個對象,每個對象包含需要插入的數據。
foreach
標簽:<insert id="batchInsert" parameterType="java.util.List">
insert into table_name (column1, column2, column3)
values
<foreach collection="list" item="item" separator=",">
(#{item.property1}, #{item.property2}, #{item.property3})
</foreach>
</insert>
在 Java 代碼中傳入一個 List,然后在 SQL 中使用 foreach
標簽遍歷 List 中的元素進行插入。
需要注意的是,批量插入操作在 MyBatis 中可能會有一定的性能損耗,因為每次插入都會生成一個 SQL 語句執行。如果數據量較大,建議通過批量插入方式來提高性能。