温馨提示×

MyBatis中怎么进行批量插入操作

小亿
91
2024-03-07 16:11:26
栏目: 编程语言

在 MyBatis 中进行批量插入操作可以通过使用 insertList 方法或者 foreach 标签来实现。

  1. 使用 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 包含多个对象,每个对象包含需要插入的数据。

  1. 使用 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 语句执行。如果数据量较大,建议通过批量插入方式来提高性能。

0