PageHelper 简介

PageHelper是一款mabatis分页插件,但是归根结底的原理还是基于limit关键字进行分页的。

使用方式

  1. 如果是使用的maven方式,只需要按照以下的方式导入坐标即可,版本号可以更改。
  2. 如果是导入jar包的方式,就需要手动下载jar包然后加入到类路径下。
导入坐标
<!--pageHelper Start--><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper</artifactId><version>4.1.4</version></dependency><dependency><groupId>com.github.jsqlparser</groupId><artifactId>jsqlparser</artifactId><version>0.9.5</version></dependency><!--pageHelper End-->
添加配置

1.如果是使用了spring整合mybatis的方式,只需要找到对应的spring 配置文件,在下面添加如下的pageHelper插件配置即可

    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"><!-- PageHelper配置如下 --><property name="plugins"><array><bean class="com.github.pagehelper.PageHelper"><!--  如果不配置的话可以不写 --><property name="properties"><!--使用下面的方式配置参数,可以直接默认不用配置 --><value></value></property></bean></array></property></bean>
前台代码,HTML分页样式代码
                        <!-- 分页进度条 --><div class="panel-body"><div class="row"><div class="col-md-6" style="line-height: 30px;">当前第<span class="pageStyle">${pageInfo.pageNum}</span>页共<span class="pageStyle">${pageInfo.pages}</span>页总计<span class="pageStyle">${pageInfo.total}</span>条</div><div class="col-md-6"><nav aria-label="Page navigation" class="pull-right"><ul class="pagination pagination-sm" style="margin: 0px;"><li><a href="${pageContext.request.contextPath}/employee/toList?pageNo=1">首页</a></li><c:if test="${pageInfo.pageNum==1}"><li class="disabled"><a href="#" aria-label="Previous" class="prePage"><span aria-hidden="true">上一页</span></a></li></c:if><c:if test="${pageInfo.pageNum!=1}"><li><a href="#" aria-label="Previous" class="prePage"><span aria-hidden="true">上一页</span></a></li></c:if><c:forEach items="${pageInfo.navigatepageNums}" step="1" var="itemPage"><c:if test="${pageInfo.pageNum == itemPage}"><li class="active"><ahref="${pageContext.request.contextPath}/employee/toList?pageNo=${itemPage}">${itemPage}</a></li></c:if><c:if test="${pageInfo.pageNum != itemPage}"><li><ahref="${pageContext.request.contextPath}/employee/toList?pageNo=${itemPage}">${itemPage}</a></li></c:if></c:forEach><c:if test="${pageInfo.pageNum == pageInfo.pages}"><li class="disabled" class="nextPage"><a href="#" aria-label="Next"><span aria-hidden="true">下一页</span></a></li></c:if><c:if test="${pageInfo.pageNum != pageInfo.pages}"><li><a href="#" aria-label="Next" class="nextPage"><span aria-hidden="true">下一页</span></a></li></c:if><li><ahref="${pageContext.request.contextPath}/employee/toList?pageNo=${pageInfo.pages}">尾页</a></li></ul></nav></div></div></div>
前台代码,JavaScript分页处理逻辑代码
    <%--分页script--%><!-- 业务处理 --><script type="text/javascript">//处理上下页$(function () {//参数定义 curPage(当前页) totalPages(总页数)var curPage = ${ pageInfo.pageNum };var totalPages = ${ pageInfo.total };//判断是否还存在上一页,是就请求后台$(".prePage").click(function () {if (curPage > 1) {var pageNo = curPage - 1;$(this).attr("href", "${pageContext.request.contextPath}/employee/toList?pageNo=" + pageNo);}});//判断是否还存在下一页,是就请求后台$(".nextPage").click(function () {if (curPage < totalPages) {var pageNo = curPage + 1;$(this).attr("href", "${pageContext.request.contextPath}/employee/toList?pageNo=" + pageNo);}});})</script><%--分页script--%>
后台代码
 @RequestMapping(value = "/toList", method = RequestMethod.GET)public String userList(Model model, @RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo) {//第一次请求没有页数,所以这里先指定默认第一次请求参数为1//startPage为pageHelper默认方法,只需要传入两个参数,一个当前页,一个每页显示条数PageHelper.startPage(pageNo, 10);//getEmployeeList()为自己定义的查询全部数据List<Employee> employees = employeeService.getEmployeeList(); //查询全部数据//将查询到的所有数据放入到实现分页PageInfo中实现分页效果PageInfo<Employee> pageInfo = new PageInfo<>(employees, 10);model.addAttribute("pageInfo", pageInfo);return "employee_info/info";}

jsp+pageHelper分页相关推荐

  1. PageHelper 分页插件只用Page、不用PageInfo 的写法

    PageHelper 分页插件,学到的写法是得到Page 对象后再转成PageInfo 对象,但Page 是ArrayList 的子类,里面包含了数据列表和分页信息,为什么不能直接用Page 对象做分 ...

  2. ssm框架中利用pagehelper分页,完成模糊查询与select条件查询

    ssm框架中利用pagehelper分页,完成模糊查询与select条件查询 一.问题分析 1.1 往期回顾 pagehelper分页 https://blog.csdn.net/Jia_Peng_T ...

  3. PageHelper分页插件及PageInfo介绍及使用

    1. MyBatis分页插件-PageHelper的配置 maven配置文件pom.xml 引入依赖: <!--引入PageHelper分页插件 → PageHelper--><de ...

  4. spring boot整合mybatis+通用mapper+pagehelper分页插件

    spring boot整合mybatis+通用mapper+pagehelper分页插件 pom依赖 <?xml version="1.0" encoding="U ...

  5. 关于pagehelper分页

    关于pagehelper分页 首先其依赖 <!-- 分页插件 --><dependency><groupId>com.github.pagehelper</g ...

  6. SpringBoot入门篇--整合mybatis+generator自动生成代码+druid连接池+PageHelper分页插件

    我们这一一篇博客讲的是如何整合Springboot和Mybatis框架,然后使用generator自动生成mapper,pojo等文件.然后再使用阿里巴巴提供的开源连接池druid,这个连接池的好处我 ...

  7. pagehelper的使用_SpringBoot项目中,如何更规范的使用PageHelper分页?

    SpringBoot项目中,如何更规范的使用PageHelper分页,拉勾IT课小编为大家分解 一. 开发准备 1. 开发工具 • IntelliJ IDEA 2020.2.3 2. 开发环境 • R ...

  8. Springboot+Mybatis+PageHelper 分页、排序

    Springboot+Mybatis+PageHelper 分页.排序 升序 asc.降序 desc <!-- 继承 spring boot 父包--><parent>< ...

  9. 记录pageHelper分页orderby的坑

    pageHelper的count查询会过滤查询sql中的order by条件! pageHelper分页功能很强大,如果开启count统计方法,在你执行查询条件时会再执行一条selet count(* ...

最新文章

  1. 【枚举】【二分答案】【分块答案】【BFS】【最大流】【Dinic】bzoj1189 [HNOI2007]紧急疏散evacuate...
  2. linux动态线程池--原理,这儿的代码不完整
  3. 机器学习服务第一梯队都有谁?权威研究机构Forrester发布最新报告
  4. Python numpy函数hstack() vstack() stack() dstack() vsplit() concatenate()的使用
  5. 【算法】 - 滑动窗口
  6. SQL求一个表中非重复数据及其出现的次数
  7. O-RAN:致力于ICDT融合,打造开放与智能的无线接入网
  8. priority_quenue
  9. python文件读写到list_Python文件读写
  10. 拒绝996,选对框架很关键!看这里。。。。。。
  11. python图层合并_Python 2种方法实现叠加矩形框图层
  12. 系统功能测试用例模板
  13. java写一个音乐播放程序,同时显示歌词
  14. js实现word生成书签_javascript下用ActiveXObject控件替换word书签,将内容导
  15. viper4Android md风格,ViPER4Android音效 XHIFX版
  16. 大二第六周(逐渐暴躁的一周)
  17. kubernetes pod一直是ContainerCreating,READY是0/1
  18. 学 android需要什么基础,学习安卓开发需要什么基础?
  19. python 十进制转二进制
  20. D3D中2D图片的绘制

热门文章

  1. 智能电能表故障预警系统设计
  2. 3D建模的培训机构一般多少钱?
  3. java毕业设计在线问诊系统的设计与实现Mybatis+系统+数据库+调试部署
  4. 机器视觉相机怎么选型?
  5. 使用jna调用c语言动态库对接华视电子身份证阅读机
  6. 计算机网络的参考模型,计算机网络-参考模型
  7. C、C++ 中\n、\t、\r的具体用法功能
  8. 在Macbook 上云玩LOL
  9. 移动端免费可用的BaaS接入方案
  10. scalemode属性 html,flash中的Stage属性...