不写sql时不会用PageHelper——被迫手撕分页的一天

在这里插入图片描述
核心代码

if (resultBO.getSuccessful()) {
            //校验合法
            if((count+pageSize-1)/pageSize<pageNum){
                pageNum=1;
            }
            //17条数据,如果pageNum:2,pageSize:10,则应计算范围为11-17
            int startPage=(pageNum-1)*pageSize+1;
            int endPage;
            if(count<pageNum*pageSize){
                endPage=count;
            }else{
                endPage=pageNum*pageSize;
            }
            for(int i=startPage-1;i<endPage;i++){
                resultList.add(resultBO.getResultList().get(i));
            }
            GridPageResp<List<TCompanyIndustryPO>> grid =
                    new GridPageResp<>(resultList, count);
            grid.setResult(resultList);
            grid.setCount(count);
            return HttpBaseResponseUtil.getPageListResponse((List<TCompanyIndustryPO>) grid.getResult(), grid.getCount());
        }

示例

 public CommonResp<HttpPageListResult> getSynchronizedPort(DataSynchronizePortBO dataSynchronizePortBO) {
        List<TportDataSynchronizedVO> dataList=setData();
        List<TportDataSynchronizedVO> resultList=new ArrayList<>();

        int pageNum=dataSynchronizePortBO.getPageNum();
        int pageSize=dataSynchronizePortBO.getPageSize();
        int count=dataList.size();
        if((count+pageSize-1)/pageSize<pageNum){
            pageNum=1;
        }
        int startPage=(pageNum-1)*pageSize+1;
        int endPage;
        if(count<pageNum*pageSize){
            endPage=count;
        }else{
            endPage=pageNum*pageSize;
        }
        for(int i=startPage-1;i<endPage;i++){
            resultList.add(dataList.get(i));
        }
        GridPageResp<List<TportDataSynchronizedVO>> grid =
                new GridPageResp<>(resultList, count);
        grid.setResult(resultList);
        grid.setCount(count);
        return HttpBaseResponseUtil.getPageListResponse((List<TportDataSynchronizedVO>) grid.getResult(), grid.getCount());
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值