记录一下工作中遇到的问题及解决办法:
需求如下:
调用第三方接口返回的是一个list,没有给分页,但是我们业务需要分页展示,所以就需要把从接口接收到的数据封装到一个Page里边;前端只需要传pageNum(页码)跟 pageSize(每页条数)这2个参数就可以返回对应的分页数据。
代码如下:
import cn.hutool.json.JSONUtil; import com.github.pagehelper.Page; List<User> userList = JSONUtil.toList(JSONUtil.toJsonStr(result.getData()),User.class); int pageNum = 1; //页码 int pageSize = 5; //每页条数 Page page = new Page(pageNum,pageSize); page.setTotal(userList.size()); int startIndex = (pageNum - 1) * pageSize; //要展示的初始条数位置 int endIndex = Math.min(startIndex + pageSize, userList.size()); page.addAll(userList.subList(startIndex,endIndex));