数据库物理分页和逻辑分页简单介绍

1、物理分页:

        物理分页就是数据库本身提供了分页方式,如mysql的limit,好处是效率高,不好的地方就是不同数据库有不同的搞法。

2、逻辑分页:

逻辑分页利用游标分页,好处是所有数据库都统一,坏处就是效率低。

3、常用orm框架采用的分页技术:

①:hibernate采用的是物理分页;

②:MyBatis使用RowBounds实现的分页是逻辑分页,也就是先把数据记录全部查询出来,然在再根据offset和limit截断记录返回(数据量大的时候会造成内存溢出),不过可以用插件或其他方式能达到物理分页效果。

mybatis的物理分页插件:

常见的两种: Mybatis-Paginator Mybatis-PageHelper


   为了在数据库层面上实现物理分页,又不改变原来MyBatis的函数逻辑,可以编写plugin截获MyBatis Executor的statementhandler,重写SQL来执行查询

原文地址:https://www.cnblogs.com/zhaoxinshanwei/p/5773147.html