SSM使用PageHelper
第一步---->导入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的更多相关文章
- ssm+maven+pageHelper搭建maven项目实现快速分页
ssm+maven+pageHelper搭建maven项目实现快速分页 PageHelper分页使用: 插件的环境引入: 1.pom文件中引入分页插件的资源位置: <dependency> ...
- ssm+PageHelper实现分页查询
通过搭建ssm框架,然后通过mybatis的分页插件pagehelp进行分页查询.源码:https://gitee.com/smfx1314/pagehelper 看一下项目结构: 首先创建一个mav ...
- 关于在SSM框架下使用PageHelper
首先,如果各位在这块配置和代码有什么问题欢迎说出来,我也会尽自己最大的能力帮大家解答 这些代码我都是写在一个小项目里的,项目的github地址为:https://github.com/Albert-B ...
- PageHelper分页实战(SSM整合)
步骤一:引入SSM相关的jar包,包列表如下: 步骤二:创建或修改配置文件,配置文件清单如下: applicationContext.xml <?xml version="1.0&qu ...
- SSM框架手动实现分页逻辑(非PageHelper)
第一种方法:查询出所有数据再分页 分析: 分页时,需要获得前台传来的两个参数,分别为pageNo(第几页数据),pageSize(每页的条数); 根据这两个参数来计算出前端需要的数据是查出数据list ...
- SSM手动实现分页逻辑---非PageHelper方式
第一种方法:查询出所有数据再分页 分析: 分页时,需要获得前台传来的两个参数,分别为pageNo(第几页数据),pageSize(每页的条数); 根据这两个参数来计算出前端需要的数据是查出数据list ...
- 后端分页神器,mybatis pagehelper 在SSM与springboot项目中的使用
mybatis pagehelper想必大家都耳熟能详了,是java后端用于做分页查询时一款非常好用的分页插件,同时也被人们称为mybatis三剑客之一,下面 就给大家讲讲如何在SSM项目和sprin ...
- ssm工程集成mybatis分页插件pagehelper
1 首先需要在mybatis的配置文件SqlMapConfig.xml文件中配置pagehelper插件 <plugins> <plugin interceptor=" ...
- Java SSM框架之MyBatis3(三)Mybatis分页插件PageHelper
引言 对于使用Mybatis时,最头痛的就是写分页,需要先写一个查询count的select语句,然后再写一个真正分页查询的语句,当查询条件多了之后,会发现真不想花双倍的时间写count和select ...
- SSM+PageHelper+jqGrid实现数据分页
前言 前几天自己写了一个分页功能,代码逻辑写的很乱今天发现jqGrid这个工具是真好用,故记录下来方便以后使用首先是PageHelper后台分页工具PageHelper的原理是基于拦截器实现的 具体流 ...
随机推荐
- 《吐血整理》高级系列教程-吃透Fiddler抓包教程(31)-Fiddler如何抓取Android系统中Flutter应用程序的包
1.简介 Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面.Flutter应用程序是用Dart编写的,这是一种由Google在7年多前创建的语言.Flut ...
- 一篇文章带你了解轻量级Web服务器——Nginx简单入门
一篇文章带你了解轻量级Web服务器--Nginx简单入门 Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件代理服务器 在本篇中我们会简单介绍Nginx的特点,安装,相关指令使用以及配置信 ...
- 机器学习中in-domine, out-domine的区别
in-domine 为域内数据,即为训练模型时使用的数据: out-domine 为域外数据,即为检验模型时使用的数据.
- python 总是忘函数
sorted sorted()函数对所有可迭代对象进行操作,返回的是一个新列表:列表的list方法只对列表有效,且不生成新的列表. # 对成绩升序排列,名字降序排列 d1 = [{'name':'al ...
- VS Code插件推荐
VS Code插件推荐 VS Code作为前端开发人员在学习工作中必不可少的开发软件,其强大的功能以及丰富多样的插件都让开发人员爱不释手.下面推荐个人觉得还不错的几个插件,希望可以帮助到你.如果你 ...
- 嵌入式-C语言基础:字符串strlen和sizeof的区别
strlen表示的实际的字符串长度,不会把字符串结束符'\0'计算进去,而sizeof则不是实际的字符串长度,它会把字符串的结束标识符'\0'也包含进去. #include<stdio.h> ...
- 2022春每日一题:Day 16
题目:不同子串个数 这题需要利用后缀数组求出的height的性质,我们发现对于每个后缀,他的height后的所有子串就是算在答案里,因此答案只需要求出n-height[i]-sa[i]+1的和就可以了 ...
- 【OpenStack云平台】安装Centos操作系统
视频教程:https://live.csdn.net/v/236820 1.环境准备 准备实验所需要的环境,需要安装VMware Workstation.使用的系统镜像为CentOS-7.5-x86_ ...
- 第2-4-8章 规则引擎Drools实战(1)-个人所得税计算器
目录 9. Drools实战 9.1 个人所得税计算器 9.1.1 名词解释 9.1.2 计算规则 9.1.2.1 新税制主要有哪些变化? 9.1.2.2 资较高人员本次个税较少,可能到年底扣税增加? ...
- 函数调用时用const保护指针
当调用函数并且把指向变量的指针作为参数传入时,通常会假设函数将修改变量(否则,为什么函数需要指针呢?).例如,如果在程序中看到语句 f(&x); 大概是希望f改变x的值.但是,f仅需检查x的值 ...