mybatis使用pagehelper分页
时间: 2023-09-13 13:14:02 浏览: 116
pagehelper是mybatis 提供的分页插件
MyBatis 是一个优秀的持久层框架,而 PageHelper 是一个用于 MyBatis 的分页插件。使用 PageHelper 可以方便地实现分页功能。下面是使用 PageHelper 进行分页的步骤:
1. 添加依赖:在项目的 `pom.xml` 文件中添加以下依赖:
```xml
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>latest-version</version>
</dependency>
```
可以在 Maven 仓库中找到最新版本的 PageHelper。
2. 配置 PageHelper:在 MyBatis 的配置文件中添加以下配置项:
```xml
<plugins>
<plugin interceptor="com.github.pagehelper.PageInterceptor">
<!-- 可选:设置数据库方言,用于支持不同数据库的分页 -->
<property name="dialect" value="mysql"/>
<!-- 可选:设置为 true 启用合理化查询,开启后,如果 pageSize=0 或者 PageMethod 的 `count` 参数为 true,则会查询总数 -->
<property name="reasonable" value="true"/>
</plugin>
</plugins>
```
注意:根据你所使用的数据库类型,需要将 `dialect` 属性配置为相应的数据库方言。
3. 使用 PageHelper 进行分页:在需要进行分页的查询方法中,使用 PageHelper 的静态方法来设置分页参数,例如:
```java
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
// ...
// 设置分页参数,pageNum 表示当前页数,pageSize 表示每页显示的记录数
PageHelper.startPage(pageNum, pageSize);
// 执行查询
List<MyEntity> resultList = myEntityMapper.selectByExample(example);
// 封装查询结果,并返回给前端
PageInfo<MyEntity> pageInfo = new PageInfo<>(resultList);
return pageInfo;
```
这样就完成了使用 PageHelper 进行分页的配置和使用。PageHelper 会自动在查询语句后面添加分页的 SQL 语句,根据传入的分页参数进行数据查询和结果封装。返回的 `PageInfo` 对象可以用于获取分页相关的信息,如总记录数、总页数等。
阅读全文