mybatis批量插入与批量修改
时间: 2023-07-01 18:22:07 浏览: 117
MyBatis提供了批量操作的API,可以实现批量插入和批量修改。
批量插入可以使用MyBatis提供的`insertList`方法,它需要传入一个`List`类型的参数,其中包含了要插入的多条记录。对应的Mapper.xml文件中,使用`insert`标签,通过`foreach`标签遍历`List`参数,实现批量插入。
示例代码如下:
Java代码:
```java
public interface UserMapper {
void insertList(List<User> userList);
}
```
Mapper.xml文件:
```xml
<insert id="insertList" parameterType="java.util.List">
insert into user (id, name, age) values
<foreach collection="list" item="item" separator=",">
(#{item.id}, #{item.name}, #{item.age})
</foreach>
</insert>
```
批量修改可以使用MyBatis提供的`updateList`方法,它需要传入一个`List`类型的参数,其中包含了要修改的多条记录。对应的Mapper.xml文件中,使用`update`标签,通过`foreach`标签遍历`List`参数,实现批量修改。
示例代码如下:
Java代码:
```java
public interface UserMapper {
void updateList(List<User> userList);
}
```
Mapper.xml文件:
```xml
<update id="updateList" parameterType="java.util.List">
<foreach collection="list" item="item" separator=";">
update user set name=#{item.name}, age=#{item.age}
where id=#{item.id}
</foreach>
</update>
```
需要注意的是,批量操作可能会对数据库造成较大的负担,因此建议在使用时慎重考虑。
阅读全文