Java-Class-C:com.github.pagehelper.PageInfo
ylbtech-Java-Class-C:com.github.pagehelper.PageInfo |
1.返回顶部 |
2.返回顶部 |
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
- @ApiOperation(value = "查询拼团情况列表")
- @PostMapping("/selectGroupSituationListById")
- public Result selectGroupSituationListById(HttpServletRequest request, @RequestBody() Map pa) {
- try {
- String organizationId = TokenUtils.getOrganizationId(request, jwtUtil);
- int pno = (int) pa.get("pno");
- int psize = (int) pa.get("psize");
- PageHelper.startPage(pno, psize);
- pa.put("organizationId",organizationId);
- List<Map> list = grouactivityMapper.selectGroupSituationListById(pa);
- PageInfo<Map> pageInfo = PageInfo.of(list);
- return ResultGenerator.genOkResult(pageInfo);
- } catch (Exception e) {
- log.error("列表异常", e);
- return ResultGenerator.genFailedResult(500, "系统异常");
- }
- }
3.返回顶部 |
4.返回顶部 |
- /*
- * The MIT License (MIT)
- *
- * Copyright (c) 2014-2017 abel533@gmail.com
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
- package com.github.pagehelper;
- import java.util.Collection;
- import java.util.List;
- /**
- * 对Page<E>结果进行包装
- * <p/>
- * 新增分页的多项属性,主要参考:http://bbs.csdn.net/topics/360010907
- *
- * @author liuzh/abel533/isea533
- * @version 3.3.0
- * @since 3.2.2
- * 项目地址 : http://git.oschina.net/free/Mybatis_PageHelper
- */
- @SuppressWarnings({"rawtypes", "unchecked"})
- public class PageInfo<T> extends PageSerializable<T> {
- //当前页
- private int pageNum;
- //每页的数量
- private int pageSize;
- //当前页的数量
- private int size;
- //由于startRow和endRow不常用,这里说个具体的用法
- //可以在页面中"显示startRow到endRow 共size条数据"
- //当前页面第一个元素在数据库中的行号
- private int startRow;
- //当前页面最后一个元素在数据库中的行号
- private int endRow;
- //总页数
- private int pages;
- //前一页
- private int prePage;
- //下一页
- private int nextPage;
- //是否为第一页
- private boolean isFirstPage = false;
- //是否为最后一页
- private boolean isLastPage = false;
- //是否有前一页
- private boolean hasPreviousPage = false;
- //是否有下一页
- private boolean hasNextPage = false;
- //导航页码数
- private int navigatePages;
- //所有导航页号
- private int[] navigatepageNums;
- //导航条上的第一页
- private int navigateFirstPage;
- //导航条上的最后一页
- private int navigateLastPage;
- public PageInfo() {
- }
- /**
- * 包装Page对象
- *
- * @param list
- */
- public PageInfo(List<T> list) {
- this(list, 8);
- }
- /**
- * 包装Page对象
- *
- * @param list page结果
- * @param navigatePages 页码数量
- */
- public PageInfo(List<T> list, int navigatePages) {
- super(list);
- if (list instanceof Page) {
- Page page = (Page) list;
- this.pageNum = page.getPageNum();
- this.pageSize = page.getPageSize();
- this.pages = page.getPages();
- this.size = page.size();
- //由于结果是>startRow的,所以实际的需要+1
- if (this.size == 0) {
- this.startRow = 0;
- this.endRow = 0;
- } else {
- this.startRow = page.getStartRow() + 1;
- //计算实际的endRow(最后一页的时候特殊)
- this.endRow = this.startRow - 1 + this.size;
- }
- } else if (list instanceof Collection) {
- this.pageNum = 1;
- this.pageSize = list.size();
- this.pages = this.pageSize > 0 ? 1 : 0;
- this.size = list.size();
- this.startRow = 0;
- this.endRow = list.size() > 0 ? list.size() - 1 : 0;
- }
- if (list instanceof Collection) {
- this.navigatePages = navigatePages;
- //计算导航页
- calcNavigatepageNums();
- //计算前后页,第一页,最后一页
- calcPage();
- //判断页面边界
- judgePageBoudary();
- }
- }
- public static <T> PageInfo<T> of(List<T> list) {
- return new PageInfo<T>(list);
- }
- public static <T> PageInfo<T> of(List<T> list, int navigatePages) {
- return new PageInfo<T>(list, navigatePages);
- }
- /**
- * 计算导航页
- */
- private void calcNavigatepageNums() {
- //当总页数小于或等于导航页码数时
- if (pages <= navigatePages) {
- navigatepageNums = new int[pages];
- for (int i = 0; i < pages; i++) {
- navigatepageNums[i] = i + 1;
- }
- } else { //当总页数大于导航页码数时
- navigatepageNums = new int[navigatePages];
- int startNum = pageNum - navigatePages / 2;
- int endNum = pageNum + navigatePages / 2;
- if (startNum < 1) {
- startNum = 1;
- //(最前navigatePages页
- for (int i = 0; i < navigatePages; i++) {
- navigatepageNums[i] = startNum++;
- }
- } else if (endNum > pages) {
- endNum = pages;
- //最后navigatePages页
- for (int i = navigatePages - 1; i >= 0; i--) {
- navigatepageNums[i] = endNum--;
- }
- } else {
- //所有中间页
- for (int i = 0; i < navigatePages; i++) {
- navigatepageNums[i] = startNum++;
- }
- }
- }
- }
- /**
- * 计算前后页,第一页,最后一页
- */
- private void calcPage() {
- if (navigatepageNums != null && navigatepageNums.length > 0) {
- navigateFirstPage = navigatepageNums[0];
- navigateLastPage = navigatepageNums[navigatepageNums.length - 1];
- if (pageNum > 1) {
- prePage = pageNum - 1;
- }
- if (pageNum < pages) {
- nextPage = pageNum + 1;
- }
- }
- }
- /**
- * 判定页面边界
- */
- private void judgePageBoudary() {
- isFirstPage = pageNum == 1;
- isLastPage = pageNum == pages || pages == 0;
- hasPreviousPage = pageNum > 1;
- hasNextPage = pageNum < pages;
- }
- public int getPageNum() {
- return pageNum;
- }
- public void setPageNum(int pageNum) {
- this.pageNum = pageNum;
- }
- public int getPageSize() {
- return pageSize;
- }
- public void setPageSize(int pageSize) {
- this.pageSize = pageSize;
- }
- public int getSize() {
- return size;
- }
- public void setSize(int size) {
- this.size = size;
- }
- public int getStartRow() {
- return startRow;
- }
- public void setStartRow(int startRow) {
- this.startRow = startRow;
- }
- public int getEndRow() {
- return endRow;
- }
- public void setEndRow(int endRow) {
- this.endRow = endRow;
- }
- public int getPages() {
- return pages;
- }
- public void setPages(int pages) {
- this.pages = pages;
- }
- public int getPrePage() {
- return prePage;
- }
- public void setPrePage(int prePage) {
- this.prePage = prePage;
- }
- public int getNextPage() {
- return nextPage;
- }
- public void setNextPage(int nextPage) {
- this.nextPage = nextPage;
- }
- public boolean isIsFirstPage() {
- return isFirstPage;
- }
- public void setIsFirstPage(boolean isFirstPage) {
- this.isFirstPage = isFirstPage;
- }
- public boolean isIsLastPage() {
- return isLastPage;
- }
- public void setIsLastPage(boolean isLastPage) {
- this.isLastPage = isLastPage;
- }
- public boolean isHasPreviousPage() {
- return hasPreviousPage;
- }
- public void setHasPreviousPage(boolean hasPreviousPage) {
- this.hasPreviousPage = hasPreviousPage;
- }
- public boolean isHasNextPage() {
- return hasNextPage;
- }
- public void setHasNextPage(boolean hasNextPage) {
- this.hasNextPage = hasNextPage;
- }
- public int getNavigatePages() {
- return navigatePages;
- }
- public void setNavigatePages(int navigatePages) {
- this.navigatePages = navigatePages;
- }
- public int[] getNavigatepageNums() {
- return navigatepageNums;
- }
- public void setNavigatepageNums(int[] navigatepageNums) {
- this.navigatepageNums = navigatepageNums;
- }
- public int getNavigateFirstPage() {
- return navigateFirstPage;
- }
- public int getNavigateLastPage() {
- return navigateLastPage;
- }
- public void setNavigateFirstPage(int navigateFirstPage) {
- this.navigateFirstPage = navigateFirstPage;
- }
- public void setNavigateLastPage(int navigateLastPage) {
- this.navigateLastPage = navigateLastPage;
- }
- @Override
- public String toString() {
- final StringBuilder sb = new StringBuilder("PageInfo{");
- sb.append("pageNum=").append(pageNum);
- sb.append(", pageSize=").append(pageSize);
- sb.append(", size=").append(size);
- sb.append(", startRow=").append(startRow);
- sb.append(", endRow=").append(endRow);
- sb.append(", total=").append(total);
- sb.append(", pages=").append(pages);
- sb.append(", list=").append(list);
- sb.append(", prePage=").append(prePage);
- sb.append(", nextPage=").append(nextPage);
- sb.append(", isFirstPage=").append(isFirstPage);
- sb.append(", isLastPage=").append(isLastPage);
- sb.append(", hasPreviousPage=").append(hasPreviousPage);
- sb.append(", hasNextPage=").append(hasNextPage);
- sb.append(", navigatePages=").append(navigatePages);
- sb.append(", navigateFirstPage=").append(navigateFirstPage);
- sb.append(", navigateLastPage=").append(navigateLastPage);
- sb.append(", navigatepageNums=");
- if (navigatepageNums == null) {
- sb.append("null");
- } else {
- sb.append('[');
- for (int i = 0; i < navigatepageNums.length; ++i) {
- sb.append(i == 0 ? "" : ", ").append(navigatepageNums[i]);
- }
- sb.append(']');
- }
- sb.append('}');
- return sb.toString();
- }
- }
5.返回顶部 |
6.返回顶部 |
![]() |
作者:ylbtech 出处:http://ylbtech.cnblogs.com/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 |
Java-Class-C:com.github.pagehelper.PageInfo的更多相关文章
- Java-Class-C:com.github.pagehelper.PageHelper
ylbtech-Java-Class-C:com.github.pagehelper.PageHelper 1.返回顶部 2.返回顶部 1.1. import com.github.pagehel ...
- Java WebSocket库:https://github.com/TooTallNate/Java-WebSocket
https://github.com/TooTallNate/Java-WebSocket 以下是简单示例: import com.google.gson.JsonObject; import com ...
- SpringBoot-07:SpringBoot整合PageHelper做多条件分页查询
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 本篇博客讲述如何在SpringBoot中整合PageHelper,如何实现带多个条件,以及PageInfo中的 ...
- java.lang.ClassCastException: java.util.ArrayList cannot be cast to com.github.pagehelper.Page pagehelper报错无法类型转化。
报错信息: 严重: Servlet.service() for servlet [springmvc] in context with path [] threw exception [Request ...
- java.lang.ClassCastException: java.util.ArrayList cannot be cast to com.github.pagehelper.Page
出现这个错误,首先看配置mybatis-config.xml中的<plugins> <plugin interceptor="com.github.pagehelper.P ...
- 20个GitHub最热门的Java开源项目:文档、框架、工具
专注于Java领域优质技术,欢迎关注 文章来源:JavaGuide 以下涉及到的数据统计,数据来源:https://github.com/trending/java?since=monthly[1] ...
- Mybatis的分页插件com.github.pagehelper
1. 需要引入PageHelper的jar包 如果没有使用maven,那直接把jar包导入到lib文件夹下即可,这个PageHelper插件在github上有开源, 地址为:https://githu ...
- Github PageHelper 原理解析
任何服务对数据库的日常操作,都离不开增删改查.如果一次查询的纪录很多,那我们必须采用分页的方式.对于一个Springboot项目,访问和查询MySQL数据库,持久化框架可以使用MyBatis,分页工具 ...
- Java基础20:Java8新特性终极指南
更多内容请关注微信公众号[Java技术江湖] 这是一位阿里 Java 工程师的技术小站,作者黄小斜,专注 Java 相关技术:SSM.SpringBoot.MySQL.分布式.中间件.集群.Linux ...
随机推荐
- [NOIP模拟测试37]反思+题解
一定要分析清楚复杂度再打!!!窝再也不要花2h20min用暴力对拍暴力啦!!! 雨露均沾(滑稽),尽量避免孤注一掷.先把暴力分拿全再回来刚正解. 即使剩下的时间不多了也优先考虑认真读题+打暴力而非乱搞 ...
- php开发面试题---php 对swoole的理解
php开发面试题---php 对swoole的理解 一.总结 一句话总结: 以战养学,实例驱动 swoole是披着PHP外衣的C程序:其实就是c.java那些语言里面的高阶功能:比如 持久连接.异步通 ...
- VMware 克隆 CenterOS 虚拟机
前面介绍了VMware 安装CenterOS 6.9,现在再介绍下 VMware 克隆虚拟机,克隆虚拟机可以快速的创建虚拟机,免去重复安装的烦恼. 一.VMware 克隆 CenterOS 虚拟机 选 ...
- 用php写爬虫去爬数据
参考文档1 参考文档2 这里是我自己写的一个小需求 <?php /** 采集http://www.959.cn/school,即时更新的最新的文章内容:每分钟采集一次.采集结束后实时入库并展示. ...
- OAccflow集成sql
SELECT * FROM PORT_EMP WHERE NO='18336309966'SELECT * FROM PORT_DEPT WHERE no='42DBAF50712C4046B09BC ...
- Linux(四)—— 项目部署与ansible自动化部署
目录 项目部署与ansible自动化部署 一.项目部署 二.ansible自动化部署(python自动化运维) 1.安装ansible 2.ansible例子 3.ansible自动化部署nginx ...
- Scrapy框架: pipelines.py设置
保存数据到json文件 # -*- coding: utf-8 -*- # Define your item pipelines here # # Don't forget to add your p ...
- python基础【第九篇】
补充知识 1.字符串方法的补充 s = str() s.format() # 格式化输出 "连接符".join("连接的对象") # 拼接 s.find() # ...
- 逻辑回归原理,推导,sklearn应用
目录 逻辑回归原理,推导,及sklearn中的使用 1 从线性回归过渡到逻辑回归 2 逻辑回归的损失函数 2.1 逻辑回归损失函数的推导 2.2 梯度下降法 2.3 正则化 3 用逻辑回归进行多分类 ...
- [ACM] POJ 1218 THE DRUNK JAILER (关灯问题)
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/sr19930829/article/details/37727417 THE DRUNK JAILE ...