有一种情况,我们有时不便在数据库层面进行分页。我们知道Mybatis的startPage();方法也是对数据库进行limit操作,有没有一种方式,只对List集合进行分页呢?
当然有,我们可以使用Stream流的方式对List集合进行操作,代码如下:
List<User> userList = userService.selectUserList();
List<User> subList = userList.stream().skip((tv.getPageNum()-1)*tv.getPageSize()).limit(tv.getPageSize()).collect(Collectors.toList());
这里面tv.getPageNum()是页数,也就是页码。tv.getPageSize()是每页显示的条数。
我们的结果subList就是分页过后的集合。