Java – MyBatis 分页插件pagehelper

简介

分页功能是一个非常繁锁的问题,需要判断首页,尾页,所在页的前后两页的页码,实现起来非常麻烦,Mybatis作为一个数据库查询工具必然会预到分页页码的问题。

 

分页插件

添加依赖

<dependency>
    <groupId>com.github.pagehelper</groupId>
    <artifactId>pagehelper</artifactId>
    <version>5.2.0</version>
</dependency>

 

配置分页插件

在MyBatis的核心配置文件中配置插件

// 在mybatis-config.xml 文件中加入拦截器
<plugins>
    <!--设置分页插件-->
    <plugin interceptor="com.github.pagehelper.PageInterceptor"></plugin>
</plugins>

 

分页插件的使用

1> 在查询功能之前使用PageHelper.startPage(int pageNum, int pageSize)开启分页功能

pageNum:当前页的页码
pageSize:每页显示的条数
SqlSession sqlSession = SqlSessionUtil.getSqlSession();
EmpMapper mapper = sqlSession.getMapper(EmpMapper.class);

// 在执行 mapper 接口前设置页码数据,通过返回值可以获得Page基本页码信息
Page<Object> page = PageHrlper.startPage(页码数, 一页记录数)

List<Emp> empsFromDeptId = mapper.getEmpsFromDeptId(1); 

Page 页码信息可查看分页相关数据

 

b>在查询获取list集合之后,使用PageInfo<T> pageInfo = new PageInfo<>(List<T> list, int navigatePages)获取分页相关数据

list:分页之后的数据
navigatePages:在页面中显示导航分页的页数,比如5,则在页面中一定会显示5个页码,如当前页是4,则必定显示【2 3 4 5 6】

 

SqlSession sqlSession = SqlSessionUtil.getSqlSession();
EmpMapper mapper = sqlSession.getMapper(EmpMapper.class);

// 开启分页功能
PageHelper.startPage(页码数, 一页记录数);

// 获取记录总数
List<Emp> empsFromDeptId = mapper.getEmpsFromDeptId(1); 

// 把记录总数和当前的页码传进去,获得以当前页码为中心的页码信息,和当前页码的数据
PageInfo<Emp> pageinfo = new PageInfo<>(查询数据List, 当前导航页码)

PageInfo 页码信息可查看分页相关数据

 

c>分页相关数据

PageInfo{
pageNum=8, pageSize=4, size=2, startRow=29, endRow=30, total=30, pages=8,
list=Page{count=true, pageNum=8, pageSize=4, startRow=28, endRow=32, total=30,
pages=8, reasonable=false, pageSizeZero=false},
prePage=7, nextPage=0, isFirstPage=false, isLastPage=true, hasPreviousPage=true,
hasNextPage=false, navigatePages=5, navigateFirstPage4, navigateLastPage8,
navigatepageNums=[4, 5, 6, 7, 8]
}
pageNum:当前页的页码
pageSize:每页显示的条数
size:当前页显示的真实条数
total:总记录数
pages:总页数
prePage:上一页的页码
nextPage:下一页的页码
isFirstPage/isLastPage:是否为第一页/最后一页
hasPreviousPage/hasNextPage:是否存在上一页/下一页
navigatePages:导航分页的页码数
navigatepageNums:导航分页的页码,[1,2,3,4,5]

 

如果您喜欢本站,点击这儿不花一分钱捐赠本站

这些信息可能会帮助到你: 下载帮助 | 报毒说明 | 进站必看

修改版本安卓软件,加群提示为修改者自留,非本站信息,注意鉴别

THE END
分享
二维码
打赏
海报
Java – MyBatis 分页插件pagehelper
简介 分页功能是一个非常繁锁的问题,需要判断首页,尾页,所在页的前后两页的页码,实现起来非常麻烦,Mybatis作为一个数据库查询工具必然会预到分页页码的问题。   分页插件 添加依赖 &……
<<上一篇
下一篇>>