SqlSession对象的selectList方法有个RowBounds参数,该参数可用于控制返回的记录数量。使用代码如下:
数据抓取机制:是先将当前页记录以及前面所有记录,以及后面一条记录都抓取出来,然后再截取当前页记录显示。例如需要抓取显示4-6条记录时,实际获取的是前6条记录,外加第7条记录。这种抓取机制,越往后分页,性能会越差。
优化MyBatis分页
高效的分页应该是只抓取需要显示的记录,使用pageHelper.jar组件可以优化查询机制。使用方法如下:
-
添加pageHelper.jar工具包
-
在mybatis配置文件中配置pageHelper
此时再执行上面查询代码时,会将原有SQL封装成分页SQL语句,抓取记录时只抓取需要显示的记录。