PageHelper是一个MyBatis的分页插件,它可以方便地实现数据库查询结果的分页功能。下面是使用PageHelper的步骤:
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>版本号</version>
</dependency>
<plugins>
<plugin interceptor="com.github.pagehelper.PageInterceptor">
<!-- 启用合理化时,如果pageNum<1会查询第一页,如果pageNum>pages会查询最后一页 -->
<property name="reasonable" value="true"/>
</plugin>
</plugins>
startPage
方法,该方法会自动将接下来的一条查询语句进行分页。例如:// 在查询方法之前调用startPage方法
PageHelper.startPage(pageNum, pageSize);
// 执行查询方法
List<User> users = userDao.selectUsers();
其中,pageNum
表示要查询的页码,pageSize
表示每页的记录数。selectUsers
方法是自己定义的查询方法。
// 获取分页结果
Page<User> page = (Page<User>) users;
// 获取总记录数
long total = page.getTotal();
// 获取当前页的记录数
int size = page.size();
// 获取总页数
int pages = page.getPages();
// 获取当前页码
int pageNum = page.getPageNum();
// 获取每页的记录数
int pageSize = page.getPageSize();
// 获取当前页的数据
List<User> userList = page.getResult();
这就是使用PageHelper进行分页查询的基本步骤。通过PageHelper,我们可以方便地实现数据库查询结果的分页功能,减少了手写分页逻辑的工作量。