java 调用远程接口返回的List如何分页

远程访问调用接口访问数据查询出来的数据保存在List中,如何进行分页

4个回答

分页啊,你肯定要知道当前页码和页面大小,让接口返回给你,或者你自己调用之前指定

自己计算分页吧;
/**

  • Range *
  • @author littlehow
  • @time 2016-06-02 14:45
    */
    public class RangeUtils {

    /**

    • 获取分页信息
    • @param pageNo
    • @param pageSize
    • @return */ public static Range getPageRange (int pageNo, int pageSize) { Range range = new Range(); if (pageNo < 1 || pageSize < 1) return range; int start = (pageNo - 1) * pageSize + 1; int end = start + pageSize - 1; range.setEnd(end); range.setStart(start); range.setDistance(pageSize); return range; }

    public static class Range {
    private int start = 0;
    private int end = 0;
    private int distance;

    public boolean isValid() {
        return start >=0 & end > 0 & end > start;
    }
    
    public boolean outRange(int num) {
        return start > num;
    }
    
    public int getStart() {
        return start;
    }
    
    public void setStart(int start) {
        this.start = start;
    }
    
    public int getEnd() {
        return end;
    }
    
    public void setEnd(int end) {
        this.end = end;
    }
    
    public int getDistance() {
        return distance;
    }
    
    public void setDistance(int distance) {
        this.distance = distance;
    }
    

    }
    }


int end = range.getEnd();
totalCount就是你list的size;
/** 数据超出最后范围 */
if (end > totalCount) {
end = totalCount;
}
最后对list进行subList

如果有帮助,希望采纳

要么你发送页码和页面大小过去让接口去算完返回给你,要么你拿到一堆数据然后自己算

在接口写页面大小的方法,每页展示的记录数大小,的方法。
传给接口这些值就行了,总页数,当前页数,下一页,上一页,每页记录数
例如:
public List getPageData(int start,int end);//获取记录的接口方法,end - start 是个定值,是每页显示的记录数
这里

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐