MyBatis Plus 3.3 批量修改
时间: 2023-08-14 19:12:54 浏览: 82
MyBatis批量添加、修改和删除
MyBatis Plus 3.3 提供了一个名为 `updateBatchById` 的方法,可以用于批量修改。该方法接受一个实体对象的集合,每个实体对象都表示要修改的数据,实体对象中需要包含主键字段。
示例代码如下:
```java
List<User> userList = new ArrayList<>();
// 假设要修改id为1、2、3的数据的age字段为20
userList.add(new User().setId(1L).setAge(20));
userList.add(new User().setId(2L).setAge(20));
userList.add(new User().setId(3L).setAge(20));
int rows = userMapper.updateBatchById(userList);
```
上述代码中,`User` 是实体类,`setId()` 和 `setAge()` 方法用于设置实体对象的主键和需要修改的字段。`userMapper` 是 MyBatis Plus 自动生成的 Mapper 接口,`updateBatchById` 方法用于批量修改数据。
需要注意的是,`updateBatchById` 方法的执行效率可能不如单个修改语句的效率高,因为它需要执行多个 SQL 语句。如果数据量较大,可以考虑分批执行。
阅读全文