MyBatis实现分页功能
1. 原始方法,使用 limit,需要自己处理分页逻辑:
对于 mysql 数据库可以使用 limit ,如:
select * from table limit 5; --返回前5行
select * from table limit 0,5; --同上,返回前5行
select * from table limit 5,10; --返回6-15行
对于 oracle 数据库可以使用 rownum ,如:
--如:从表Sys_option(主键为sys_id)中从第10条记录开始检索20条记录,语句如下
SELECT * FROM (SELECT ROWNUM R,t1.* From Sys_option where rownum < 30 ) t2
Where t2.R >= 10
2. 拦截StatementHandler,其实质还是在最后生成limit语句
详见:www.cnblogs.com/jcli/archive/2011/08/09/2132222.html
3. 使用PageHelper插件,这是目前比较常见的方法:
由于篇幅太长详细过程看原文:www.cnblogs.com/digdeep/p/4608933.html