分页插件的使用

public List<Object> queryAll(@RequestParam(required=false,defaultValue="0") Integer page,
                     @RequestParam(required=false,defaultValue="0") Integer pageSize,
                     @RequestParam(required=false,defaultValue="0") Integer id){
    PageHelper.startPage(page, pageSize);
    List<Object> dataList = new ArrayList<>();

    List<A> aList = aService.queryAll(id);
    
    List<B> bList = bService.queryAll(id);
    //重点在下面
    if (pageSize == 0) {
        PageInfo<A> a = new PageInfo<>(aList );
        PageInfo<B> b = new PageInfo<>(bList );
        dataList.addAll(a.getList());
        dataList.addAll(b.getList());
        return dataList;
    } else {
        //根据pageSize设定总共返回的数据条数,确保返回的数据总数不会超过pageSize
        int totalSize = aList.size() + bList.size();
        int endIndex = Math.min(totalSize, pageSize);
        //返回的 suppliesStockList 数据条数不会超过 endIndex
        dataList.addAll(aList.subList(0, Math.min(aList.size(), endIndex)));
        dataList.addAll(bList.subList(0, Math.max(0, endIndex - bList.size())));
        return dataList;
    }

}

上述代码将两个不同实体类的数据进行分页的处理,当pageSize为0,表示将所有的数据返回,不为0就按照pageSize的个数返回对应个数的数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值