-
用PageHelper插件实现分页功能(mybatis+springMVC)
1、可以去官网查看PageHelper
2、分页插件的三种配置方法:
<1>在 mybatis.xml中 配置
<2>在spring的配置文件中配置
<3>在配置类中配置
3、步骤
《1》在pom.xml文件中加入PageHelper依赖
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.3.0</version>
</dependency>
依赖库网址:https://mvnrepository.com/ 《2》配置插件,在mybatis.xml中(注意位置,在数据库连接的上面)
<plugins> <plugin interceptor="com.github.pagehelper.PageInterceptor"/> </plugins>
《3》使用{ 1、接口方法 2、实现接口{加入分页方法}
PageHelper.startPage(page,5);
} 《4》具体实现如下: Controller.java
/* PageHelper.startPage(page,5);
* page:代表当前页面(从jsp页面传过来的参数)
* 5:代表每页有多少条信息
* @RequestParam(value = "page",defaultValue = "1") int page
* @RequestParam:表示从jsp页面传过来的参数
* value:为传过来的参数
* */
/*查询所有*/
@RequestMapping("/alllist")
public String alllist(@RequestParam(value = "page",defaultValue = "1") int page, Model model){
PageHelper.startPage(page,5);
SingleDao singleDao=new SingleDaoImpl();
List<Lists> allLists=singleDao.selectall();
//创建PageInfo对象,把列表中的信息封装到PageInfo中,因为PageInfo中有很多分页方法可以调用
PageInfo pageInfos=new PageInfo(allLists);
//把创建的PageInfo对象添加到model中传入 jsp页面
model.addAttribute("pageInfos" , pageInfos);
return "single/allList";
}
//model传过来的数据在jsp页面怎么调用 ${pageinfos.list}:显示列数据
alllist.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Bootstrap 实例 - 上下文类</title>
</head>
<body>
<table class="table">
<thead>
<tr>
<th>id</th>
<th>学科</th>
<th>题型</th>
<th>题干</th>
<th>分数</th>
<th>难度</th>
<th >编辑</th>
</tr>
</thead>
<c:forEach items="${pageInfos.list }" var="a">
<tbody>
<tr class="warning">
<td>${a.id }</td>
<td>${a.subject }</td>
<td>${a.questiontype }</td>
<td>${a.question }</td>
<td>${a.score }</td>
<td>${a.difficulty }</td>
<td>
<a href="/student/delete?id=${s.id}">删除</a>
<a href="/student/selectOne?id=${s.id}">修改</a>
</td>
<%-- <a href="deleteStudent?id=${s.id}">删除</a>--%>
</tr>
</tbody>
</c:forEach>
</table>
当前是 第${pageInfos.pageNum} 页,每页${pageInfos.pageSize}条
//:/single/alllist:控制方法路径;
//page:要传入到控制方法的参数
<a href="/single/alllist?page=1">首页</a>
<a href="/single/alllist?page=${pageInfos.prePage==0?1:pageInfos.prePage}">上一页</a>
<a href="/single/alllist?page=${pageInfos.nextPage}">下一页</a>
<a href="/single/alllist?page=${pageInfos.pages}">尾页</a>
</body>
</html>
PageInfo中的方法:(要先创建PageIngo对象 ,再调用方法) PageNum:获取当前页 Pages:获取总页数; PageSize;每页条数; Total:总记录数; NavigateFirstPage:获取第一页 NavigateLastPage:获取最后一页 PrePage:上一页 NextPage:下一页 来源:https://www.cnblogs.com/wyxjava/p/15582083.html
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
SQL Server -- 解决存储过程传入参数作为s
JavaScript判断两个数组相等的四类方法
js如何操作video标签
React实战--利用甘特图和看板,强化Paas平
【记录】正则替换的偏方
前端下载 Blob 类型整理
抽象语法树AST必知必会
关于JS定时器的整理
JS中使用Promise.all控制所有的异步请求都完
js中字符串的方法
import-local执行流程与node模块路径解析流程