pageInfo.setList(orderVOList);疑问
老师您好,请问pageInfo.setList(orderVOList);的作用是什么呀,下面两种我都试了一下,返回的分页信息结果是相同的,是不是有什么区别呀.
@Override
public PageInfo listForCustomer(Integer pageNum, Integer pageSize) {
Integer userId = UserFilter.currentUser.getId();
// 获取用户订单
List<Order> orderList = orderMapper.selectListForCustomer(userId);
// 将orderList转换为orderVOList
List<OrderVO> orderVOList = orderListToOrderVOList(orderList);
// 进行分页查询
PageHelper.startPage(pageNum, pageSize);
PageInfo pageInfo = new PageInfo<>(orderList);
pageInfo.setList(orderVOList);
return pageInfo;
}@Override
public PageInfo listForCustomer(Integer pageNum, Integer pageSize) {
Integer userId = UserFilter.currentUser.getId();
// 获取用户订单
List<Order> orderList = orderMapper.selectListForCustomer(userId);
// 将orderList转换为orderVOList
List<OrderVO> orderVOList = orderListToOrderVOList(orderList);
// 进行分页查询
PageHelper.startPage(pageNum, pageSize);
PageInfo pageInfo = new PageInfo<>(orderVOList);
return pageInfo;
}63
收起
正在回答
1回答
同学你好
1)在创建pageInfo对象时,应该传入通过mapper查询出来的数据,也就是orderList。
PageInfo中存储的是分页的信息,PageInfo会根据传入的list设置pageNum,pageSize等值,所以PageInfo应该传入通过mapper直接查询出来的数据,也就是orders,而不能是经过修改的OrderVO。

2)返回到前端时返回的是经过处理的orderVoList修改后的展示数据,所以需要通过pageInfo.setList(orderVoList);传入设置结果集。
综上不能直接书写PageInfo pageInfo = new PageInfo(orderVOList)。
祝学习愉快~
2023版Java工程师
- 参与学习 人
- 提交作业 8790 份
- 解答问题 9886 个
综合就业常年第一,编程排行常年霸榜,北上广深月薪过万! 不需要基础,无需脱产即可学习,只要你有梦想,想高薪! 全新升级:技术栈升级(包含VUE3.0,ES6,Git)+项目升级(前后端联调与功能升级)
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星