java lambda分页

话不多说直接贴代码

 1     @GetMapping("/getCdrDetailList/{billingCycleId}/{acctId}/{acctItemTypeId}/{pageNum}")
 2     public List<CdrDetailVO> getCdrDetailList(@PathVariable("billingCycleId") Long billingCycleId,
 3                                               @PathVariable("acctId") Long acctId,
 4                                               @PathVariable("acctItemTypeId") Long acctItemTypeId,
 5                                               @PathVariable("pageNum") int pageNum) {
 6         // 重要:因为涉及多表结果集合并,每个表的数据组装逻辑差距极大,并且根据入参条件查询出来的结果集数量很小,故考虑使用java内存list的lambda分页
 7         List<CdrDetailVO> cdrDetailList = ledgerQryService.getCdrDetailList(billingCycleId, acctId, acctItemTypeId);
 8         int pageSize = 15;
 9         // lambda分页
10         List<CdrDetailVO> result = cdrDetailList.stream().skip(pageSize * (pageNum - 1)).limit(pageSize).collect(Collectors.toList());
11         return result;
12     }

 

posted @ 2019-10-12 16:46  余总出去浪  阅读(3945)  评论(0编辑  收藏  举报