概述
项目开发中经常需要分页,但为了提高开发效率,开发过程中往往不考虑分页。那么如何在功能开发完后使用一种对代码侵略度最低的方式实现分页,本文将提供一种方案。
参考:
1. 简单使用
1.1 引入分页插件
添加如下maven依赖:
|
|
1.2 配置Mybatis拦截器插件(以下两种方式选一种即可)
1.2.1 在Mybatis配置文件中配置
|
|
1.2.2 在spring配置文件中配置
|
|
1.2 在代码中使用
在你需要进行分页的Mybatis方法前调用PageHelper.startPage
静态方法即可,紧跟在这个方法后的第一个Mybatis查询方法会被进行分页。
|
|
如此,就能获取指定页数和数量的数据(resultList)。
PageInfo包含了非常全面的分页属性
|
|
可根据这些信息发送到前端实现前端分页。
2. 结合前端jquery.DataTable插件实现前端分页
DataTable插件的详细使用方法请参考各搜索引擎或dataTables-使用详细说明整理
为了结合DataTable插件,需要传递一些特定的参数,为此封装了两个类。请参考(essa内网):
2.1 前端代码示例
|
|
2.2 后端代码示例
|
|
通过上述示例方法返回json数据到前台,DataTable接收显示分页数据。
3. 使用EL表达式实现前端分页的一个示例
- 后台发送pageInfo到前台
|
|
- 前台使用EL表达式实现分页,pageInfo中的各项参数请参考1.2节
|
|
总结
在使用此Mybatis分页插件时,不需要在分页的地方手写分页sql和count的sql,不需要更改已有的业务代码,只需要在执行sql前调用一句代码,即可实现分页,并得到丰富的分页信息。有了这些分页信息,前端可以选用多种分页方法,非常方便。