PageHelp使用失效
1.使用前必须导入相关的依赖(版本可自选)
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.1.4</version>
</dependency>
2.习惯配置mybatis-config.xml的可在其中加入插件(没有配置的直接跳过)
<plugins>
<plugin interceptor="com.github.pagehelper.PageInterceptor">
<!--分页参数合理化 -->
<property name="reasonable" value="true"/>
</plugin>
</plugins>
正确使用(Controller的方法中) 可以在controller层或serviceImpl层使用。
例 1
当一个方法中有多个查询语句时,只有紧跟在PageHelper.starPage()方法后的查询结果才会分页。
PageHelper.startPage(1,10);//从第一页开始,每页5条记录
List<Test> tests = testService.getAllTestsByTypeId(testTypeid); // 查询语句
PageInfo pageInfo = new PageInfo(tests);
或
PageHelper.startPage(1,10);//从第一页开始,每页5条记录
List<Test> tests = testService.getAllTestsByTypeId(testTypeid); // 查询语句
PageInfo pageInfo = new PageInfo(tests);
PageHelper.startPage(1,10);//从第一页开始,每页5条记录
List<Select> s = SelectService.getById(id); // 查询语句
PageInfo pageInfo = new PageInfo(s);
例 2
查询结果可以对其进行遍历在其内部进行查询分页不会失效。
PageHelper.startPage(1,10);//从第一页开始,每页5条记录
List<Test> tests = testService.getAllTestsByTypeId(testTypeid); // 查询语句
// 遍历
tests.foreach(e->{
// 查询信息
selectService.getById(e.getId())
})
PageInfo pageInfo = new PageInfo(tests);
错误用法
分页会失效
PageHelper.startPage(1,10);//从第一页开始,每页5条记录
List<Test> tests = testService.getAllTestsByTypeId(testTypeid); // 查询语句
List<Select> s = selectService.getById(id);// 查询语句
PageInfo pageInfo = new PageInfo(tests);