List<Bookkeeping> book = bookkeepingMapper.update(new QueryWrapper<>());这串代码有什么问题
时间: 2024-12-02 09:14:34 浏览: 15
这行代码看起来像是在使用MyBatis-Plus的`update()`方法尝试对`Bookkeeping`表中的记录进行更新,但是存在一些潜在的问题:
1. **预期目的不明确**:`QueryWrapper<>`通常用于构造复杂的SQL查询条件,这里没有传入具体的更新条件,这意味着可能会更新表中的所有记录,如果这不是你的意图,那么这个做法会有误。
2. **泛型不匹配**:`update()`方法通常需要一个具体的`BaseModel`类型的实体对象作为参数,而不是一个列表。如果你想要批量更新,应该使用`batchUpdate()`方法并传递一个`Bookkeeping`对象列表。
3. **无返回值**:`bookkeepingMapper.update()`不会直接返回更新的记录数或者受影响的行数,而是返回一个`List<Bookkeeping>`,这可能导致误解,因为通常`update()`会返回影响行数。
修正后的代码可能是这样的:
```java
List<Bookkeeping> updatedBooks = bookkeepingMapper.batchUpdate(bookKeepingList, new QueryWrapper<>());
```
这里`bookKeepingList`是一个包含待更新`Bookkeeping`对象的集合,`QueryWrapper<>`用于添加更新条件。
相关问题
https://gitee.com/yersmola/bit-by-bit-bookkeeping/blob/master/diandier.zip
这是一个链接地址,指向一个名为“diandier.zip”的文件,位于“https://gitee.com/yersmola/bit-by-bit-bookkeeping/blob/master/”路径下的网站“gitee.com”上。
阅读全文