使用先导入分页依赖
<!-- 分⻚-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.3.2</version>
</dependency>
在application.yml中配置分页
#配置分页
pagehelper:
helperDialect: mysql
reasonable: true
supportMethodsArguments: true
params: count=countSql
再创建一个分页拦截器
//分页拦截器
@Configuration
public class PageHelperConfigure {
@Bean
public Interceptor[] plugins() {
return new Interceptor[]{new PageInterceptor()};
}
}
最后就可以开始使用分页了注意代码逻辑要先分页再查询数据,
currentPage 当前页
pageSize 一页多少
public Page<User> queryList(Integer currentPage, Integer pageSize, String search) {
// 设置分页
Page<User> page = PageHelper.startPage(currentPage, pageSize);
// 查询全部数据
List<User> all = userDao.queryList(search);
// 将查询结果设置到Page对象中
// page.addAll(all); //无需查询数据时,PageHelper 插件会自动将查询结果设置到Page 对象中
// 获取总记录数
long total = userDao.queryCount(search); //查询总记录数的方法
// 将总记录数存入Page对象
page.setTotal(total);
return page;