- PageHelper是MyBatis中非常方便的第三方分页插件。
使用步骤
- 导包
<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.2.0</version> </dependency>
- 在MyBatis 配置文件中加入插件(也可在Spring 中加入)
<plugins> <!-- com.github.pagehelper为PageHelper类所在包名 --> <plugin interceptor="com.github.pagehelper.PageInterceptor"/> </plugins>
- 至此,即可使用。查询还是如平时一样查询,只是在使用之前添加一个
PageHelper.startPage(10, 10);
,用于设置页数和页面数据数。而使用PageInfo
可以获取当前页的许多信息,可用于显示在前端。@Test public void testPageHelper() { PageHelper.startPage(10, 10); //PageHelper.offsetPage(0, 10); try (SqlSession sqlSession = Utils.getSqlSession()) { UserMapper mapper = sqlSession.getMapper(UserMapper.class); List<User> users = mapper.selectAll(); users.forEach(System.out::println); PageInfo<User> userPageInfo = new PageInfo<>(users); System.out.println(userPageInfo.getPageNum()); // 获取当前页码 System.out.println(userPageInfo.getPageSize()); // 获取页面长度 System.out.println(userPageInfo.getNextPage()); // 获取下一页页码 System.out.println(userPageInfo.getPages()); // 获取页数 System.out.println(userPageInfo.getTotal()); // 获取数据数量 } }