
MyBatis分页插件PageHelper
发布日期:2021-05-07 13:38:29
浏览次数:28
分类:精选文章
本文共 3546 字,大约阅读时间需要 11 分钟。
是国人写的一款MyBatis的分页插件!
本文简单的说明一下他的使用: 要使用PageHelper,您只需要在类路径中包含 pagehelper-xyzjar 和jsqlparser-xyzjar文件。 如果您使用的是Maven,只需将以下依赖项添加到pom.xml中:< 依赖关系 >
< groupId > com.github.pagehelper </ groupId > < artifactId > pagehelper </ artifactId > < 版本 > xxx </ version > </ 依赖关系 > 配置MyBatis核心配置文件:方法一:(只需要加上 Page page = PageHelper.startPage(2, 3);)
public static void queryStudents() throws IOException { String resource = "conf.xml"; Reader reader = Resources.getResourceAsReader(resource); SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader); SqlSession session = sessionFactory.openSession(); //传入StudentMapper接口,返回该接口的mapper代理对象studentMapper StudentMapper studentMapper = session.getMapper(StudentMapper.class);//接口 //加入分页功能 Page
方法二(lambda)
public static void queryStudents() throws IOException { String resource = "conf.xml"; Reader reader = Resources.getResourceAsReader(resource); SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader); SqlSession session = sessionFactory.openSession(); //传入StudentMapper接口,返回该接口的mapper代理对象studentMapper StudentMapper studentMapper = session.getMapper(StudentMapper.class);//接口 //加入分页功能 Pagepage = PageHelper.startPage(2, 3).doSelectPage(()-> studentMapper.queryStudents()); List list = page.getResult(); for(Student student :list){ System.out.println(student); } System.out.println("当前页:"+page .getPageNum()); System.out.println("总数据量:"+page .getTotal()); System.out.println("总页码:" +page.getPages()); System.out.println("页面大小:" +page .getPageSize()); session.close(); }
单独想看更多的页面信息:(采用pageInfo)
public static void queryStudents() throws IOException { String resource = "conf.xml"; Reader reader = Resources.getResourceAsReader(resource); SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader); SqlSession session = sessionFactory.openSession(); //传入StudentMapper接口,返回该接口的mapper代理对象studentMapper StudentMapper studentMapper = session.getMapper(StudentMapper.class);//接口 //加入分页功能 PageHelper.startPage(2, 3);//1 Listlist = studentMapper.queryStudents() ; for(Student student :list){ System.out.println(student); } PageInfo pageInfo = new PageInfo<>(list); System.out.println("当前页:"+pageInfo.getPageNum()); System.out.println("总数据量:"+pageInfo.getTotal()); System.out.println("总页码:" +pageInfo.getPages()); System.out.println("页面大小:" +pageInfo.getPageSize()); System.out.println("最开头那一页:"+ pageInfo.getNavigateFirstPage()); System.out.println("每一页的页号"); for( int pageNum : pageInfo.getNavigatepageNums()){ System.out.println(pageNum); } session.close(); }
更多方法请看本文第一行的链接!
发表评论
最新留言
不错!
[***.144.177.141]2025年04月08日 02时14分22秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
十五天精通WCF——第二天 告别烦恼的config配置
2019-03-06
双十一来了,别让你的mongodb宕机了
2019-03-06
asp.net mvc 之旅 —— 第六站 ActionFilter的应用及源码分析
2019-03-06
Tomcat 热部署
2019-03-06
深入解析 HTTP 缓存控制
2019-03-06
深入浅出访问者模式
2019-03-06
深入探索Android热修复技术原理读书笔记 —— 热修复技术介绍
2019-03-06
百度前端技术学院task16源代码
2019-03-06
解析js中( ( ) { } ( ) )的含义
2019-03-06
js设计模式总结5
2019-03-06
Python大神编程常用4大工具,你用过几个?
2019-03-06
一文带你了解图神经网络
2019-03-06
9个常用ES6特性归纳(一般用这些就够了)
2019-03-06
3D渲染集群,你了解多少?
2019-03-06
除了方文山,用TA你也能帮周杰伦写歌词了
2019-03-06
关于GO语言,这篇文章讲的很明白
2019-03-06
华为云FusionInsight湖仓一体解决方案的前世今生
2019-03-06
大数据处理黑科技:揭秘PB级数仓GaussDB(DWS) 并行计算技术
2019-03-06
C++调用Go方法的字符串传递问题及解决方案
2019-03-06
云原生2.0时代下,DevOps实践如何才能更加高效敏捷?
2019-03-06