com.github.pagehelper.PageHelper
1. PageHelper.startPage(pageNum,pageSize);
问题定位:
PageHelper的分页功能是通过Limit拼接SQL实现的。查询效率低的问题也找出来了,那么应该如何解决。
- limit在数据量少或者页数比较靠前的时候查询效率是比较高的。(单表数据量百万进行测试)
- select * from user where age = 10 limit 1,10;结果显示0.43s
- 当where条件后的结果集较大并且页数达到一个量级整个SQL的查询效率就十分低下(哪怕where的条件加上了索引也不行)。
- select * from user where age = 10 limit 100000,10;结果显示4.73s
解决方案:
2. PageUtils.startPage(pageNum,pageSize);