首页 > 基础资料 博客日记
解决class java.util.ArrayList cannot be cast to class com.github.pagehelper.Page (java.util.ArrayList
2025-01-15 12:30:09基础资料围观60次
Java资料网推荐解决class java.util.ArrayList cannot be cast to class com.github.pagehelper.Page (java.util.ArrayList这篇文章给大家,欢迎收藏Java资料网享受知识的乐趣
解决class java.util.ArrayList cannot be cast to class com.github.pagehelper.Page (java.util.ArrayList 错误
今天写SpringBoot项目时,出现以下错误
源码:
@Override
public PageBean<Article> list(Integer pageNum, Integer pageSize, Integer categoryId, String state) {
// 1.创建Bean对象
PageBean<Article> pb = new PageBean<>();
// 2.开启分页查询
PageHelper.startPage(pageNum,pageSize);
// 3.调用mapper查询
Map<String,Object> map = ThreadLocalUtil.get();
Integer userId = (Integer) map.get("id");
List<Article> as = articleMapper.list(userId, categoryId , state);
Page<Article> p = (Page<Article>) as;
pb.setTotal(p.getTotal());
pb.setItems(p.getResult());
return pb;
}
原因分析:
java.util.ArrayList类不能强制转换为com.github.pagehelper.Page类
解决过程:
经过我的一般摸索,一开始觉得是导入的版本太高了,不兼容的问题。导致我一直在调版本,结果发现只能用5.x.x的版本。
最后的解决的方法是不用Page而是将 as 封装成PageInfo
@Override
public PageBean<Article> list(Integer pageNum, Integer pageSize, Integer categoryId, String state) {
// 1.创建Bean对象
PageBean<Article> pb = new PageBean<>();
// 2.开启分页查询
PageHelper.startPage(pageNum,pageSize);
// 3.调用mapper查询
Map<String,Object> map = ThreadLocalUtil.get();
Integer userId = (Integer) map.get("id");
List<Article> as = articleMapper.list(userId, categoryId , state);
PageInfo<Article> p = new PageInfo<Article>(as);
//把数据填充到PageBean对象中去
pb.setTotal(p.getTotal());
pb.setItems(p.getList());
return pb;
}
然后就能正常访问了
文章来源:https://blog.csdn.net/m0_59954214/article/details/140424700
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
标签: