使用mybatisPlus批量修改
时间: 2023-11-26 16:08:49 浏览: 275
Mybatis-Plus 提供了 `updateBatchById` 方法来实现批量修改操作。具体步骤如下:
1. 创建一个实体类,包含需要修改的字段及其 getter、setter 方法。
2. 调用 `updateBatchById` 方法,传入一个实体类的集合即可。
示例代码如下:
```java
// 创建一个需要修改的实体类
User user1 = new User();
user1.setId(1L);
user1.setUsername("newName1");
User user2 = new User();
user2.setId(2L);
user2.setUsername("newName2");
// 将需要修改的实体类放入集合中
List<User> userList = new ArrayList<>();
userList.add(user1);
userList.add(user2);
// 调用 updateBatchById 方法进行批量修改
boolean result = userService.updateBatchById(userList);
```
在上述示例代码中,我们创建了两个需要修改的实体类 `user1` 和 `user2`,将它们放在一个集合中传给了 `updateBatchById` 方法进行批量修改。
注意:在实体类中,需要修改的字段必须要有对应的 getter、setter 方法。并且 `updateBatchById` 方法只会修改传入的实体类对象的非空字段。如果一个字段的值为 null,则不会修改该字段。
另外,如果需要修改的字段比较多,也可以使用 Mybatis-Plus 提供的 `UpdateWrapper` 进行条件筛选和修改。示例代码如下:
```java
UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();
updateWrapper.in("id", Arrays.asList(1L, 2L))
.set("username", "newName");
boolean result = userService.update(updateWrapper);
```
在上述示例代码中,我们使用 `UpdateWrapper` 对条件进行筛选,找到 id 为 1 和 2 的记录,并将它们的 username 字段修改为 "newName"。
阅读全文