mybatis如何批量insert多条数据

1139
2024/3/30 16:50:42
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在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中批量插入多条数据。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: 当MyBatis执行SQL查询时如何确保查询结果的安全性