SpringBoot整合PageHelper分页插件
首先新建项目
第一步:
第二步:
然后手动添加PageHelper分页插件依赖
<dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.4.1</version></dependency>
这是我所用到的依赖:
<dependencies><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.4.1</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.3.0</version></dependency><dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-j</artifactId><scope>runtime</scope></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies>
配置application文件
# tomcat 端口号设置 随意更改
server:port: 8080
#配置数据源 datasource
spring:datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/zydemo?useUnicode=true&serverTimezone=UTC&characterEncoding=utf8username: rootpassword: rootthymeleaf:mode: HTML5cache: falseprefix: classpath:/templates/suffix: .html
mybatis:type-aliases-package: com.goods.springbootgoods.pojo #引入类型别名mapper-locations: classpath:/mapper/*.xml #引入mapper文件configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #输出sql语句日志
#pagehelper分页插件配置
pagehelper:reasonable: truesupportMethodsArguments: trueparams: count=countSqlhelper-dialect: mysql
创建方法
/*** 分页查询* @param action* @return*/List<action> findAll(action action);
Service
PageInfo findAll(action action, int pageIndex, int pageSize);
PageInfo里面的属性
private int pageNum;//当前页码
private int pageSize;//设置每页多少条数据
private int size;//当前页有多少条数据
private int startRow;//当前页码第一条数据的
private int endRow;//当前页码的开始条
private int pages;//当前页码结束条
private int prePage;//上一页(页面链接使用)
private int nextPage;//下一页(页面链接使用)
private boolean isFirstPage;//是否为第一页
private boolean isLastPage;//是否为最后一页
private boolean hasPreviousPage;//是否有前一页
private boolean hasNextPage;//是否有下一页
private int navigatePages;//导航页码数(就是总共有多少页)
private int[] navigatepageNums;//导航页码数(就是总共有多少页),可以用来遍历
private int navigateFirstPage;//首页号
private int navigateLastPage;//尾页号
Impl
@Autowiredprivate actionMapper actionMapper;@Overridepublic PageInfo findAll(action action, int pageIndex, int pageSize) {PageHelper.startPage(pageIndex,pageSize);List<action> page = actionMapper.findAll(action);PageInfo pageInfo=new PageInfo(page);return pageInfo;}
Controller
@Autowiredprivate actionServiceImpl actionService;@RequestMapping("/findPage")public String findPage(Model model, action action,@RequestParam(value = "pageIndex",defaultValue = "1") Integer pageIndex,@RequestParam(value = "pageSize",defaultValue = "3",required = false) Integer pageSize){PageInfo page = actionService.findAll(action,pageIndex, pageSize);model.addAttribute("action",action);model.addAttribute("path","/findPage?pageIndex=");model.addAttribute("page",page);return "index";}
index页面 调用page的list
<table border="1"><tr><td>ID</td><td>订单编号</td><td>操作人</td><td>订单状态</td><td>支付状态</td><td>配送状态</td><td>操作记录</td><td>操作时间</td><td>状态描述</td><td>操作</td></tr><tr th:each="user:${page.list}"><td th:text="${user.action_id}"></td><td th:text="${user.order_sn}"></td><td th:text="${user.action_user}"></td><td th:if="${user.order_status}==1">已完成</td><td th:if="${user.order_status}==2">未完成</td><td th:if="${user.pay_status}==1">成功</td><td th:if="${user.pay_status}==2">失败</td><td th:text="${user.shipping_status}"></td><td th:text="${user.action_note}"></td><td th:text="${#dates.format(user.action_time,'yyyy-MM-dd')}"></td><td th:text="${user.status_desc}"></td><th><a th:href="@{'/Delete/'+${user.action_id}}">删除</a><a th:href="@{'/getById/'+${user.action_id}}">编辑</a></th></tr>
</table>
<div th:insert="page :: page"></div>
分页Page.HTML的代码
显示当前页数、总页数和总条数,当前是第一页时不显示“上一页”,当前是最后一页时不显示“下一页”,可以输入具体的页面进行跳转
<!DOCTYPE html>
<!--suppress ALL--> <!-- 去掉红色下划线-->
<div th:fragment="page"><style>.page{border: 1px solid blue;margin-right: 5px;padding: 3px 5px;}.page.active{color: red;border: 1px solid red;}</style><div style="float: left">当前第<span th:text="${page.pageNum}"></span>页总记录数<span th:text="${page.total}"></span></div><div style="float: right"><a th:text="首页" th:if="${page.pageNum>1}" th:href="@{${path}+'&order_sn='+${order_sn == null ? '' : order_sn}+'&order_status='+${order_status == null ? '' : order_status}+'&pay_status='+${pay_status == null ? '' : pay_status}}"></a><a th:text="上一页" th:if="${page.pageNum>1}" th:href="@{${path}+${page.pageNum-1}+'&order_sn='+${order_sn == null ? '' : order_sn}+'&order_status='+${order_status == null ? '' : order_status}+'&pay_status='+${pay_status == null ? '' : pay_status}}"></a><a th:href="@{${path}+${i}+'&order_sn='+${order_sn == null ? '' : order_sn}+'&order_status='+${order_status == null ? '' : order_status}+'&pay_status='+${pay_status == null ? '' : pay_status}}" th:each="i:${#numbers.sequence(1,page.pages)}" th:text="${i}"th:class="${page.pageNum==i}? 'page active':'page'"></a><a th:text="下一页" th:if="${page.pageNum<page.pages}" th:href="@{${path}+${page.pageNum+1}+'&order_sn='+${order_sn == null ? '' : order_sn}+'&order_status='+${order_status == null ? '' : order_status}+'&pay_status='+${pay_status == null ? '' : pay_status}}"></a><a th:text="尾页" th:if="${page.pageNum<page.pages}" th:href="@{${path}+${page.pages}+'&order_sn='+${order_sn == null ? '' : order_sn}+'&order_status='+${order_status == null ? '' : order_status}+'&pay_status='+${pay_status == null ? '' : pay_status}}"></a></div></div>
</html>
运行结果
到这就完成了!!!
SpringBoot整合PageHelper分页插件相关推荐
- SpringBoot中使用Mybatis-plus整合PageHelper分页插件踩坑
今天使用SpringBoot中使用Mybatis-plus整PageHelper分页插件把我给坑惨了,我报错的pom.xml配置如下,其它的依赖就忽略掉了 <!--pagehelper --&g ...
- springboot整合mybatis分页插件
1.springboot版本为2.0.1,数据库为mysql,引入pagehelper的pom依赖 <!--mybatis分页插件--> <dependency><gro ...
- SpringBoot入门篇--整合mybatis+generator自动生成代码+druid连接池+PageHelper分页插件
我们这一一篇博客讲的是如何整合Springboot和Mybatis框架,然后使用generator自动生成mapper,pojo等文件.然后再使用阿里巴巴提供的开源连接池druid,这个连接池的好处我 ...
- springboot进阶,分页插件 pageHelper,Swagger整合,日志
文章目录 1,课程回顾 2,本章重点 3,具体内容 3.1 整合连接池 3.2 springboot日志配置: 3.3 springboot整合shiro 3.4 mybatis分页插件 pageHe ...
- spring boot整合mybatis+通用mapper+pagehelper分页插件
spring boot整合mybatis+通用mapper+pagehelper分页插件 pom依赖 <?xml version="1.0" encoding="U ...
- Springboot 系列(十二)使用 Mybatis 集成 pagehelper 分页插件和 mapper 插件
前言 在 Springboot 系列文章第十一篇里(使用 Mybatis(自动生成插件) 访问数据库),实验了 Springboot 结合 Mybatis 以及 Mybatis-generator 生 ...
- springboot2.0.5集成mybatis(PageHelper分页插件、generator插件使用)
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/zab635590867/article ...
- SpringBoot整合MyBatis-Plus分页查询
在整合mybatis-plus时可以先参考官网:快速开始 一.引入依赖 <dependency><groupId>org.springframework.boot</gr ...
- Springboot+Mybatis+PageHelper 分页、排序
Springboot+Mybatis+PageHelper 分页.排序 升序 asc.降序 desc <!-- 继承 spring boot 父包--><parent>< ...
最新文章
- Ubuntu18.04中pyhton默认版本从2.7换为3.x
- Linux下Nagios的安装与配置
- subprocess installed post-installation script returned error exit status 1
- asp.net mvc中用 log4net记录日志到数据库中
- 前端学习(2258)如何做标签管理
- python爬虫爬取数据如何将br去掉_Python怎么去除爬取下来的网站中的一些转义字符串 - 收获啦...
- Linux操作系统yum常用命令
- 不错的网络协议栈測试工具 — Packetdrill
- [深度学习] loss不下降的解决方法
- 记一次物理服务器Linux系统中未找到网卡的处理方式
- paip.提升用户体验以及效率----编程语言趋势以及第四代语言4GL
- Office 2010 语言包 Office 2010 En english package 包含office professional plus所有组件,还有viso,project!
- 字节跳动怎么都十万人了?
- 如何在ANSYS 2022R1版本中使用SCDM
- 微信小程序中如何有效的修改app.js中全局变量的值,并能在页面中进行动态响应
- linux内核编译命令 理解,谢烟客---------Linux之理解内核、内核模块、编译内核
- Java开发工程师大厂面试常见问题总结(应届生版)
- 微信小程序如何加密?
- 显卡那些GS、GT的名称是什么意思?
- 2022-用Python写个超级小恐龙跑酷游戏,上班摸鱼我能玩一天10-22