当PageHelper.startPage分页失效时,不防用用这个

当使用PageHelper进行分页时,只对第一个Mapper查询生效。为解决此问题,文中展示了手动分页的实现方式,包括计算总页数、跳过和限制查询结果。代码示例展示了如何在SpringBoot应用中处理分页查询。
摘要由CSDN通过智能技术生成

失效原因:

PageHelper.startPage,仅对第一个Mapper查询有效

解决办法:

勤能补拙,网上找了又找,只能自己动手,如果有好的解决办法勿喷,还望赐教

@PostMapping("/selectDateList")
@ResponseBody 
public String selectDateList(@RequestBody InforEnity inforEnity){

   String result ="";
   try {
         if(inforEnity!=null ){

            List<InforEnity> paramList =inforService.selectDateList(inforEnity);
            List<InforEnity> paramList1 = new ArrayList<>();

            //每页记录数
            int pageSize =inforEnity.getPageSize();
            //当前页
            int currentPage=inforEnity.getCurrentPage();
            //总数
            int total = paramList .size();
           //总页数
           int pageSum = total % pageSize == 0 ? total / pageSize : total / pageSize + 1;
           paramList1 = paramList .stream().skip((currentPage - 1) * pageSize).limit(pageSize).collect(Collectors.toList());

           TableDataInfo tableDataInfo =getDataTable1(parameterList1,total,pageSum);
                result = JsonResultUtils.success("请求成功",tableDataInfo);
            }else{
                result =JsonResultUtils.error("请求失败");
            }
        }catch (Exception E){
            E.printStackTrace();
            result =JsonResultUtils.error("请求失败,请联系开发人员");
        }
        return  result;
    }



    /**
     * 响应请求分页数据
     */
    @SuppressWarnings({ "rawtypes", "unchecked" })
    protected TableDataInfo getDataTable1(List<?> list,long totalCount,long totalPage)
    {
        TableDataInfo rspData = new TableDataInfo();
        rspData.setCode(0);
        rspData.setList(list);
        //总记录数
        rspData.setTotalCount(totalCount);
        //总页数
        rspData.setTotalPage(totalPage);
        return rspData;
    }

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值