SpringBoot 集成PageHelper:
github 分页插件地址 : github.com/pagehelper/…
第一步:pom文件引入依赖
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.12</version>
</dependency>
第二步:设置PageHelper 属性
目前Pagehelper插件支持Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六种数据库分页,不同数据库只需
在配置文件中配置
pagehelper.helperDialect=mysql
pagehelper.reasonable=true
pagehelper.supportMethodsArguments=true
pagehelper.pageSizeZero=true
pagehelper.params.count=countSql
或者在代码中
//配置mybatis的分页插件pageHelper
@Bean
public PageHelper pageHelper(){
PageHelper pageHelper = new PageHelper();
Properties properties = new Properties();
properties.setProperty("offsetAsPageNum","true");
properties.setProperty("rowBoundsWithCount","true");
properties.setProperty("reasonable","true");
properties.setProperty("dialect","mysql"); //配置mysql数据库的方言
pageHelper.setProperties(properties);
return pageHelper;
}
查询
@RequestMapping("findUser")
public PageInfo<User> findUser(int page, int pagerSize) {
PageInfo<User> userList = userService.findAllUsers(page,pagerSize);
return userList;
}
service
分页查询只需将当前查询的页数和每页显示的条数穿进去即可。
public PageInfo<User> findAllUsers(int page, int pageSize) {
//为了程序的严谨性,判断非空:
if(page == 0){
page = 1; //设置默认当前页
}
if(page <= 0){
page = 1;
}
if(pageSize == 0){
pageSize = 30; //设置默认每页显示的商品数
}
// 1 设置分页信息,包括当前页数和每页显示的总计数
PageHelper.startPage(page,pageSize);
//2 执行查询
List<User> list = userMapper.findAll();
//3 获取分页查询后的数据
PageInfo<User> pageInfo = new PageInfo<>(list);
return pageInfo;
}
debug信息