温馨提示×

mybatis如何批量insert多条数据

小亿
956
2024-03-18 16:50:42
栏目: 编程语言

在MyBatis中批量插入多条数据可以使用<foreach>标签来实现。下面是使用<foreach>标签批量插入多条数据的示例:

<insert id="batchInsert" parameterType="java.util.List">
    INSERT INTO table_name (column1, column2, column3)
    VALUES
    <foreach collection="list" item="item" separator="," >
        (#{item.column1}, #{item.column2}, #{item.column3})
    </foreach>
</insert>

在上面的示例中,<insert>标签中定义了一个批量插入的SQL语句,其中使用了<foreach>标签来循环遍历传入的List参数,并将每个元素插入到数据库中。

使用时可以在Mapper接口中定义对应的方法,并传入一个包含多条数据的List对象作为参数,如下所示:

public interface MyMapper {
    void batchInsert(List<MyEntity> list);
}

然后在调用该方法时传入多条数据的List对象即可实现批量插入多条数据:

List<MyEntity> list = new ArrayList<>();
list.add(new MyEntity("value1", "value2", "value3"));
list.add(new MyEntity("value4", "value5", "value6"));

myMapper.batchInsert(list);

这样就可以实现在MyBatis中批量插入多条数据。

0