mybatis批量插入写法
时间: 2024-08-12 18:02:18 浏览: 46
MyBatis 的批量插入通常通过 `insert` 或者 `batchInsert` 动作来实现,可以大大提高数据插入的效率。以下是基本的批量插入步骤:
1. **定义映射文件**:在 XML 映射文件中,创建一个 `<insert>` 标签,指定批量插入的目标表,并使用 `foreach` 元素包裹需要插入的数据集合。
```xml
<insert id="batchInsert" parameterType="java.util.List">
INSERT INTO your_table (column1, column2, ...)
VALUES
<foreach item="item" index="index" collection="list" open="(" separator="," close=")">
(#{item.column1}, #{item.column2}, ...)
</foreach>
</insert>
```
2. **调用 SQL 执行器**:在 Java 代码中,创建一个 `SqlSession` 对象,然后使用 `getMapper()` 获取到对应的 Mapper 接口,调用 `batchInsert` 方法传入数据列表。
```java
List<Data> dataList = ...; // 数据列表
try (SqlSession sqlSession = sqlSessionFactory.openSession()) {
YourMapper mapper = sqlSession.getMapper(YourMapper.class);
int[] result = mapper.batchInsert(dataList);
for (int affectedRows : result) {
System.out.println("Inserted " + affectedRows + " rows.");
}
}
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://img-home.csdnimg.cn/images/20210720083327.png)
![-](https://img-home.csdnimg.cn/images/20210720083327.png)
![-](https://img-home.csdnimg.cn/images/20210720083327.png)
![-](https://img-home.csdnimg.cn/images/20210720083327.png)
![-](https://img-home.csdnimg.cn/images/20210720083327.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)