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的原理是基于拦截器实现的 具体流 ...
随机推荐
- SQL中的转义字符和通配符
一.通配符 如果想查找"_cs"结尾的的账户 select * from [user] where loginname like '%_cs'是不行的, _ 被认为是任意的字 ...
- 题解UVA10948 The primary problem
前言 前置 \(\sf{Solution}\) 既然有了 \(n\) ,那找出 \(a\) 和 \(b\) 就只要枚举 \(a\) 的范围 \(1\sim n\),判断 \(a\) 和 \(n-a\) ...
- vue传值
在vue 中组件间的传参是必不可少的,下面说下几种传参方式 1.父组件传值给子组件,首先父组件发送的形式是用bind(用缩写:)绑定值到子组件身上.然后子组件用属性props接收 2.子组件传值父组件 ...
- C#11之原始字符串
最近.NET7.0和C#11相继发布,笔者也是第一时间就用上了C#11,其中C#11的有一个更新能解决困扰我多年的问题,也就是文章的标题原始字符串. 在使用C#11的原始字符串时,发现的一些有意思的东 ...
- nginx转发到uwsgi的配置
server{ server_name ; listen 80 default_server; add_header Access-Control-Allow-Origin *; add_header ...
- .net随笔——Web开发config替换到正式config appSettings
前言(废话) 查了一些资料,总体来说呢,就是坑,而且顺带吐槽下百度,一个内容被copy那么多遍还排在最前面.同一个内容我点了那么多次,淦. 正题: 实现目的:开发的时候使用system.debug.c ...
- i春秋123
打开是个普普通通的登录窗口,下尝试根据提示12341234进行输入,发现不正确...可能1234是指步骤,然后查看源码 发现了绿色的提示信息,我们就根据提示试试打开user.php 打开是白板网页,源 ...
- 5V升压12.6V芯片电路图,三节锂电池充电
三节3.7V的锂电池串联,11.1V和最大12.6V锂电池充电电路的解决方案.在应用中,一般使用低压5V,如USB口直接输入的给三串锂电池充电,还有是15V或者18V,20V输入降压给锂电池充电的两种 ...
- K8s 超详细总结
一个目标:容器操作:两地三中心:四层服务发现:五种Pod共享资源:六个CNI常用插件:七层负载均衡:八种隔离维度:九个网络模型原则:十类IP地址:百级产品线:千级物理机:万级容器:相如无亿,K8s有亿 ...
- python软件开发目录规范
软件开发目录规范 1.文件及目录的名字可以变换 但是思想是不变的 分类管理 2.目录规范主要规定开发程序的过程中针对不同的文件功能需要做不同的分类 myproject项目文件夹 1,bin文件夹 -- ...