java.lang.ClassCastException: java.util.Arrays$ArrayList cannot be cast to com.github.pagehelper.Page; -----> List集和转换成Page报错
问题代码及描述
使用工具类转换方法convertToPageResult的时候直接传入了对应的List结集合,在执行Page page = (Page) result;Page强转的时候报错
protected <E> PageResult<E> convertToPageResult(List<E> result) {
List<E> list = new LinkedList<>();
Page<E> page = (Page<E>) result;
if (page.getTotal() > 0) {
list.addAll(((Page<E>) result).getResult());
}
return new PageResult<>(page.getTotal(), list, page.getPageNum(), page.getPageSize());
}
处理方案
将初始化一个Page对象,然后将对应的集合传入Page对象中,然后调用convertToPageResult方法传入page里的集合对对象就可以使用了
Page<Person> personPage = PageHelper.startPage(1, 20);
personPage.addAll(Arrays.asList(pserson));
convertToPageResult(personPage.getResult());