第一步---->导入Maven依赖

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

第二步---->在spring-mapper.xml的SqlSessionFactory中加入一下代码

        <!-- 传入PageHelper的插件 -->
<property name="plugins">
<array>
<bean class="com.github.pagehelper.PageInterceptor">
<property name="properties">
<props>
<prop key="helperDialect">mysql</prop>
<prop key="resonable">true</prop>
</props>
</property>
</bean>
</array>
</property>

第三步---->配置实体类,serviceImp,Mapper等,查询全部分页

 1
2 /** Mapper中写下page,size
3 * 查询全部学生
4 */
5 List<Student> findAll(int page, int size);
6 -----------------------------------------------------------------------------
7 /**
8 *在xxxServiceImpl中写下 PageHelper.startPage(page,size);
9 */
10 @Override
11 public List<Student> findAll(int page,int size) {
12 PageHelper.startPage(page,size);
13 return studentMapper.findAll(page, size);
14 }

第四步---->编写Controller层

 1 /**
2 * 查询所有学生
3     @RequestParam(name="page",required = true,defaultValue = "1")int page,(page:第几页)
4     @RequestParam(name="size",required = true,defaultValue = "5")int size (size:几条数据)
     
5 * @param
6 * @return
7 */
8 @RequestMapping("/findAll")
9 public ModelAndView list(@RequestParam(name="page",required = true,defaultValue = "1")int page,
10 @RequestParam(name="size",required = true,defaultValue = "5")int size ){
11 ModelAndView mv = new ModelAndView();
12 List<Student> all = studentService.findAll(page, size);
13 //PageInfo就是一个分页Bean
14 PageInfo pageInfo =new PageInfo(all);
15 mv.addObject("pageInfo", pageInfo);
16 mv.setViewName("student/findStudentAll");//指定跳转的页面
17 return mv;
18 }

第五步---->编写JSP页面

 1 <c:forEach var="student" items="${pageInfo.list}">//pageInfo是controller层存入mv中的数据,
2 <tr>
3 <td>${student.SId}</td>
4 <td>${student.SName}</td>
5 <td>${student.SBirth}</td>
6 <td>${student.SSex}</td>
7 <td>
8 <a href="${pageContext.request.contextPath}/toUpdateStudent?id=${student.getSId()}">更改</a> |
9 <a href="${pageContext.request.contextPath}/del/${student.getSId()}">删除</a>
10 </td>
11 </tr>
12 </c:forEach>
13 <ul class="pagination">
14 <li><a href="${pageContext.request.contextPath}/findAll?page=1&size=5" aria-label="Previous">首页</a></li>
15 <li><a href="${pageContext.request.contextPath}/findAll?page=${pageInfo.pageNum-1}&size=5">上一页</a></li>
16 <c:forEach begin="1" end="${pageInfo.pages}" var="pageNumber">
17 <li><a href="${pageContext.request.contextPath}/findAll?page=${pageNumber}&size=5">${pageNumber}</a></li>
18 </c:forEach>
19 <li><a href="${pageContext.request.contextPath}/findAll?page=${pageInfo.pageNum+1}&size=5">下一页</a></li>
20 <li><a href="${pageContext.request.contextPath}/findAll?page=${pageInfo.pages}&size=5" aria-label="Next">尾页</a></li>
21 </ul>

就这样SSMPageHelper结束!!!!

SSM使用PageHelper的更多相关文章

  1. ssm+maven+pageHelper搭建maven项目实现快速分页

    ssm+maven+pageHelper搭建maven项目实现快速分页 PageHelper分页使用: 插件的环境引入: 1.pom文件中引入分页插件的资源位置: <dependency> ...

  2. ssm+PageHelper实现分页查询

    通过搭建ssm框架,然后通过mybatis的分页插件pagehelp进行分页查询.源码:https://gitee.com/smfx1314/pagehelper 看一下项目结构: 首先创建一个mav ...

  3. 关于在SSM框架下使用PageHelper

    首先,如果各位在这块配置和代码有什么问题欢迎说出来,我也会尽自己最大的能力帮大家解答 这些代码我都是写在一个小项目里的,项目的github地址为:https://github.com/Albert-B ...

  4. PageHelper分页实战(SSM整合)

    步骤一:引入SSM相关的jar包,包列表如下: 步骤二:创建或修改配置文件,配置文件清单如下: applicationContext.xml <?xml version="1.0&qu ...

  5. SSM框架手动实现分页逻辑(非PageHelper)

    第一种方法:查询出所有数据再分页 分析: 分页时,需要获得前台传来的两个参数,分别为pageNo(第几页数据),pageSize(每页的条数); 根据这两个参数来计算出前端需要的数据是查出数据list ...

  6. SSM手动实现分页逻辑---非PageHelper方式

    第一种方法:查询出所有数据再分页 分析: 分页时,需要获得前台传来的两个参数,分别为pageNo(第几页数据),pageSize(每页的条数); 根据这两个参数来计算出前端需要的数据是查出数据list ...

  7. 后端分页神器,mybatis pagehelper 在SSM与springboot项目中的使用

    mybatis pagehelper想必大家都耳熟能详了,是java后端用于做分页查询时一款非常好用的分页插件,同时也被人们称为mybatis三剑客之一,下面 就给大家讲讲如何在SSM项目和sprin ...

  8. ssm工程集成mybatis分页插件pagehelper

    1    首先需要在mybatis的配置文件SqlMapConfig.xml文件中配置pagehelper插件 <plugins> <plugin interceptor=" ...

  9. Java SSM框架之MyBatis3(三)Mybatis分页插件PageHelper

    引言 对于使用Mybatis时,最头痛的就是写分页,需要先写一个查询count的select语句,然后再写一个真正分页查询的语句,当查询条件多了之后,会发现真不想花双倍的时间写count和select ...

  10. SSM+PageHelper+jqGrid实现数据分页

    前言 前几天自己写了一个分页功能,代码逻辑写的很乱今天发现jqGrid这个工具是真好用,故记录下来方便以后使用首先是PageHelper后台分页工具PageHelper的原理是基于拦截器实现的 具体流 ...

随机推荐

  1. 测试架构师CAP原理(最简单)

    测试架构师CAP原理(最简单) 很多人都不是很了解CAP理论,其实CAP很简单,不要想复杂了! C:一致性,就是数据一致性,就是数据不出错! A:可用性,就是说速度快,不延迟,无论请求成功失败都很快返 ...

  2. 题解 CF1011B Planning The Expedition

    Solution 考虑 二分 . 首先要确定二分的对象,显然二分天数较为简单. 每次找到的 \(mid\) 需要判断是否能让整队人吃饱,那就调用一个 check() . 对于 check() ,求出每 ...

  3. JK触发器与模12计数器

    JK触发器 JK触发器具有保持,置0,置1和翻转四个功能. 则可得出次态方程:\(Q_{n+1} = JQ_n'+K'Q_n\) Design `timescale 1ns / 1ps module ...

  4. 京东云开发者|软件架构可视化及C4模型:架构设计不仅仅是UML

    软件系统架构设计的目标不在于设计本身,而在于架构设计意图的传达.图形化有助于在团队间进行高效的信息同步,但不同的图形化方式需要语义一致性和效率间实现平衡.C4模型通过不同的抽象层级来表达系统的静态结构 ...

  5. Rust Aya 编写 eBPF 程序

    本文地址:https://www.ebpf.top/post/ebpf_rust_aya 1. 前言 Linux 内核 6.1 版本中有一个非常引人注意的变化:引入了对 Rust 编程语言的支持.Ru ...

  6. 使用 Go HTTP 框架 Hertz 进行 JWT 认证

    前言 上一篇文章简单介绍了一个高性能的 Go HTTP 框架--Hertz,本篇文章将围绕 Hertz 开源仓库的一个 demo,讲述如何使用 Hertz 完成 JWT 的认证与授权流程. 这里要说明 ...

  7. 当resource bundle 的多语言文件里包含引号'时

    背景 项目中使用Spring的ReloadableResourceBundleMessageSource这个类来实现多语言,有一次字符串里包含引号'时,解析时出了问题,一起来看一下吧 例子 resou ...

  8. 把Mybatis Generator生成的代码加上想要的注释

    作者:王建乐 1 前言 在日常开发工作中,我们经常用Mybatis Generator根据表结构生成对应的实体类和Mapper文件.但是Mybatis Generator默认生成的代码中,注释并不是我 ...

  9. Spring MVC文件请求处理详解:MultipartResolver

    org.springframework.web.multipart.MultipartResolver是Spring-Web针对RFC1867实现的多文件上传解决策略. 1 使用场景 前端上传文件时, ...

  10. Vue中关于数组与对象修改触发页面更新的机制与原理简析

    Vue中关于数组与对象修改触发页面更新的机制与原理简析 相关问题 数组 使用索引直接赋值与直接修改数组length时,不会触发页面更新. 例如: <script> export defau ...