mybatis如何执行多条sql语句
时间: 2024-10-01 15:10:07 浏览: 67
MyBatis允许你在一个XML映射文件或注解中执行多条SQL语句,通常通过`<foreach>`元素或者`@BatchSize`注解来实现。以下是几种常见的方法:
1. `<foreach>`标签:在Mapper XML文件中,你可以围绕需要批量处理的SQL语句使用`<foreach>`标签,指定一个collection和一个item变量名,遍历这个集合执行查询:
```xml
<select id="selectMultiple" parameterType="java.util.List" resultType="YourResultClass">
SELECT * FROM your_table
<foreach item="item" index="index" collection="list" open="(" separator="," close=")">
WHERE column = #{item}
</foreach>
</select>
```
2. `@BatchSize`注解:在Mapper接口方法上使用此注解,可以配置MyBatis在每次执行前批量提交一定数量的结果:
```java
@Insert("INSERT INTO your_table (column) VALUES (${value})")
@UseGeneratedKeys(keyProperty = "id")
@BatchSize(size = 50)
List<Integer> insertBatch(List<String> values);
```
这里,`size`属性指定了每个批次插入多少行数据。
阅读全文