java中在Controller层中对Service层返回的list集合进行分页

将参数start,limit,Service层返回的符合条件的list集合传入自定义方法中,返回pageInfo即可(如下所示)

##Controller层
PageInfo<T> pageInfo = pageSet(start,limit,list);

##自定义方法
public PageInfo<T> pageSet(Integer start, Integer limit, List<T> list) {
      if (start == null || limit == null) {
            PageInfo pageInfo = new PageInfo<>(list);
            return pageInfo;
        } else {
            Page page = new Page(start, limit);
            int total = list.size();
            page.setTotal(total);
            int startIndex = start/limit * limit;
            int endIndex = Math.min(startIndex + limit,total);
            if (startIndex > endIndex){
                page.addAll(list.subList(0,endIndex));
            } else {
                page.addAll(list.subList(startIndex,endIndex));
            }
            PageInfo pageInfo = new PageInfo<>(page);
            return pageInfo;
        }
}
posted @ 2023-01-30 13:57  LL-6  阅读(483)  评论(0)    收藏  举报