PageHelper官网:https://pagehelper.github.io/
GitHub:https://github.com/pagehelper/Mybatis-PageHelper
1.在pom.xml 引入pagehelper插件
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.0.1</version>
</dependency>
2.在工程包下配置MybatisConfig,helperDialect属性配置数据库类型:Sqlserver,Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL等等。
@Configuration
public class MybatisConfig {
/**
* 注入分页插件
*/
@Bean
public Interceptor interceptor(){
PageInterceptor pageInterceptor = new PageInterceptor();
//加载配置
Properties properties = new Properties();
//方言不设置可以自动选择
if (StrUtil.isNotBlank("sqlserver"))
properties.setProperty("helperDialect","sqlserver");
properties.setProperty("countSql", "true");
properties.setProperty("reasonable","false");
properties.setProperty("pageSizeZero","false");
//设置参数
pageInterceptor.setProperties(properties);
return pageInterceptor;
}
}
3.在程序中使用
写个小工具类:
public class PageUtils {
public static PageInfo getPageInfo(Integer pageNum, Integer pageSize, ISelect iSelect){
PageInfo<Object> pageInfo = PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(iSelect);
return pageInfo;
}
}
查询时直接使用:
PageInfo<TMoheOrder> pageInfo = PageUtils.getPageInfo(pageNum, pageSize, () -> {
//实际换成你的查询TMoheOrder为实体
tMoheOrderService.selectOrderPageList(userId);
});
List<TMoheOrder> list = pageInfo.getList();