报错class java.util.ArrayList cannot be cast to class com.baomidou.mybatisplus.extension.plugins.pagination.Page,如何正确转为page
时间: 2024-06-18 17:02:16 浏览: 219
mybatis-page-plugin
5星 · 资源好评率100%
这个错误通常出现在MyBatis-Plus分页查询时,因为MyBatis-Plus在进行分页查询时需要传入的是Page对象,而不是普通的List对象。如果你将查询结果直接转为Page对象,则会出现这个错误。
正确的方法是使用MyBatis-Plus提供的Page类进行分页查询,示例代码如下:
```
Page<User> page = new Page<>(current, size);
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.eq("name", "Tom");
IPage<User> userPage = userMapper.selectPage(page, wrapper);
```
其中,current表示当前页码,size表示每页显示的条数,User是实体类。selectPage方法会返回一个IPage对象,包含了查询结果和分页信息。
如果你已经获取了一个普通的List对象,想要将它转为Page对象,则需要手动构造一个Page对象,并将List设置到其中,示例代码如下:
```
List<User> userList = userService.list();
Page<User> page = new Page<>(1, userList.size());
page.setRecords(userList);
```
这样就可以将普通的List对象转为Page对象了。
阅读全文