/** * 查询管理列表 * * @param pojo * @return */
public List<Pojo > selectBDoctorList(Pojo pojo) { //获取前端传来的页码 和 条数 PageDomain pageDomain = TableSupport.buildPageRequest(); Integer pageNum = pageDomain.getPageNum(); Integer pageSize = pageDomain.getPageSize(); //获取缓存数据 List<Pojo > cacheList = redisService.getCacheList("pojoList"); List<Pojo > arrayList = new ArrayList<>(); if (cacheList.size() == 0){ List<pojo> pojoList= bDoctorMapper.selectBDoctorList(pojo); redisService.setCacheList("pojo",pojoList); return doctorList; }else { //把缓存数据循环添加到 arrayList 中 for (Pojo pojo: cacheList) { arrayList.add(pojo); } // 主要是这块.skip((pageNum - 1) * pageSize).limit(pageSize) 进行分页处理 final List<Pojo> collect = arrayList.stream() .skip((pageNum - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); return collect; } }
第一次用stream 在 arrayList.stream() .skip((pageNum - 1)*pageSize).limit(pageSize).collect(Collectors.toList()); 忘记了返回数据 所以一直导致数据还是缓存中数据 final List<Pojo> collect返回以后分页处理成功