传统项目:
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>4.1.0</version>
</dependency>
springboot 项目引入:
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.10</version>
</dependency>
git地址:
github项目地址:https://github.com/pagehelper/Mybatis-PageHelper
码云 项目地址:http://git.oschina.net/free/Mybatis_PageHelper
配置文件配置:
offsetAsPageNum //offset作为PageNum使用
rowBoundsWithCount //RowBounds方式是否做count查询
pageSizeZero //当设置为true的时候,如果pagesize设置为0(或RowBounds的limit=0),就不执行分页
reasonable //分页合理化,true开启,如果分页参数不合理会自动修正。默认false不启用
reasonable:分页合理化参数,默认值为false。当该参数设置为 true 时,pageNum<=0 时会查询第一页pageNum>pages(超过总数时),会查询最后一页。默认false 时,直接根据参数进行查询。
supportMethodsArguments //是否支持接口参数来传递分页参数,默认false
pagehelper.helper-dialect= Mysql
pagehelper.page-size-zero= true
pagehelper.row-bounds-with-count= false
pagehelper.reasonable= true
使用:
PageHelper.startPage(currentPage, pageSize);
List<DataRole> roles = dataRoleMapper.selectAll(name);
PageInfo<DataRole> newsPageInfo = new PageInfo<>(roles);
通过类配置:
@Configuration
public class MyBatisConfiguration {
@Bean
public PageHelper pageHelper(){
System.out.println("MyBatisConfiguration.pageHelper");
PageHelper pageHelper=new PageHelper();
Properties p=new Properties();
p.setProperty("offsetAsPageNum","true");
p.setProperty("rowBounfsWithCount","false");
p.setProperty("reasonable","true");
pageHelper.setProperties(p);
return pageHelper;
}
}