【java 分页工具类】分页工具PageBean(149)

2024-03-05 22:36
文章标签 java 工具 分页 149 pagebean

本文主要是介绍【java 分页工具类】分页工具PageBean(149),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

分页工具类:

package com.itheima3;import java.util.ArrayList;
import java.util.List;public class PageBean<T> {private int pageSize; // 每页记录数private int pageNo; // 当前页private int totalPages; // 总页数private int totalRecords; // 总记录数private List<T> list;public int getPageSize() {return pageSize;}// 设置每页记录数public void setPageSize(int pageSize) {if (pageSize > 0) {this.pageSize = pageSize;} else {this.pageSize = 10;}}public int getPageNo() {return pageNo;}// 设置当前页public void setPageNo(int pageNo) {if (pageNo <= 1) {this.pageNo = 1;} else if (pageNo > this.totalPages) {this.pageNo = this.totalPages;} else {this.pageNo = pageNo;}}public int getTotalPages() {return totalPages;}// 设置总页数public void setTotalPages() {this.totalPages = this.totalRecords % this.pageSize == 0 ? this.totalRecords / this.pageSize: this.totalRecords / this.pageSize + 1;}public int getTotalRecords() {return totalRecords;}// 设置总记录数public void setTotalRecords(int totalRecords) {if (totalRecords >= 0) {this.totalRecords = totalRecords;} else {this.totalRecords = 0;}}public List<T> getList() {return list;}public void setList(List<T> list) {this.list = list;}// 当前页记录列表public void queryPager(int pageNo, int pageSize, List<T> list) {// 设置总记录数if (list != null && list.size() != 0) {this.setTotalRecords(list.size());} else {this.setTotalRecords(0);}// 设置每页记录数this.setPageSize(pageSize);// 设置总页数this.setTotalPages();// 设置当前页this.setPageNo(pageNo);// 设置当前页记录数if (list != null && list.size() != 0) {if (pageNo == this.totalPages) {this.list = list.subList((pageNo - 1) * pageSize, this.totalRecords);} else {this.list = list.subList((pageNo - 1) * pageSize, pageNo * pageSize);}} else {this.list = new ArrayList<>();}}public boolean isPrePage() {if (this.pageNo > 1) {return true;}return false;}public boolean isNextPage() {if (this.pageNo < this.totalPages) {return true;}return false;}public int getPrePageNo() {if (isPrePage()) {return this.pageNo - 1;}return this.pageNo;}public int getNextPageNo() {if (isNextPage()) {return this.pageNo + 1;}return this.pageNo;}}

控制层:


public PageBean queryList(@RequestParam(value = "page", defaultValue = "1") Integer page,@RequestParam(value = "pageSize", defaultValue = "20") Integer pageSize) {//	if(page == null){//		page = 1;//	}//	if(pageSize == null){//		pageSize = 10;//	}List<User> list = userService.queryList();  // 数据库查询返回的List;if (CollectionUtils.isNotEmpty(list)) {PageBean<User> bean = new PageBean<>();bean.queryPager(page, pageSize, list);return bean;}return null;}

这篇关于【java 分页工具类】分页工具PageBean(149)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/778036

相关文章

Spring常见错误之Web嵌套对象校验失效解决办法

《Spring常见错误之Web嵌套对象校验失效解决办法》:本文主要介绍Spring常见错误之Web嵌套对象校验失效解决的相关资料,通过在Phone对象上添加@Valid注解,问题得以解决,需要的朋... 目录问题复现案例解析问题修正总结  问题复现当开发一个学籍管理系统时,我们会提供了一个 API 接口去

Java操作ElasticSearch的实例详解

《Java操作ElasticSearch的实例详解》Elasticsearch是一个分布式的搜索和分析引擎,广泛用于全文搜索、日志分析等场景,本文将介绍如何在Java应用中使用Elastics... 目录简介环境准备1. 安装 Elasticsearch2. 添加依赖连接 Elasticsearch1. 创

Spring核心思想之浅谈IoC容器与依赖倒置(DI)

《Spring核心思想之浅谈IoC容器与依赖倒置(DI)》文章介绍了Spring的IoC和DI机制,以及MyBatis的动态代理,通过注解和反射,Spring能够自动管理对象的创建和依赖注入,而MyB... 目录一、控制反转 IoC二、依赖倒置 DI1. 详细概念2. Spring 中 DI 的实现原理三、

SpringBoot 整合 Grizzly的过程

《SpringBoot整合Grizzly的过程》Grizzly是一个高性能的、异步的、非阻塞的HTTP服务器框架,它可以与SpringBoot一起提供比传统的Tomcat或Jet... 目录为什么选择 Grizzly?Spring Boot + Grizzly 整合的优势添加依赖自定义 Grizzly 作为

基于C#实现PDF文件合并工具

《基于C#实现PDF文件合并工具》这篇文章主要为大家详细介绍了如何基于C#实现一个简单的PDF文件合并工具,文中的示例代码简洁易懂,有需要的小伙伴可以跟随小编一起学习一下... 界面主要用于发票PDF文件的合并。经常出差要报销的很有用。代码using System;using System.Col

Java后端接口中提取请求头中的Cookie和Token的方法

《Java后端接口中提取请求头中的Cookie和Token的方法》在现代Web开发中,HTTP请求头(Header)是客户端与服务器之间传递信息的重要方式之一,本文将详细介绍如何在Java后端(以Sp... 目录引言1. 背景1.1 什么是 HTTP 请求头?1.2 为什么需要提取请求头?2. 使用 Spr

redis-cli命令行工具的使用小结

《redis-cli命令行工具的使用小结》redis-cli是Redis的命令行客户端,支持多种参数用于连接、操作和管理Redis数据库,本文给大家介绍redis-cli命令行工具的使用小结,感兴趣的... 目录基本连接参数基本连接方式连接远程服务器带密码连接操作与格式参数-r参数重复执行命令-i参数指定命

Java如何通过反射机制获取数据类对象的属性及方法

《Java如何通过反射机制获取数据类对象的属性及方法》文章介绍了如何使用Java反射机制获取类对象的所有属性及其对应的get、set方法,以及如何通过反射机制实现类对象的实例化,感兴趣的朋友跟随小编一... 目录一、通过反射机制获取类对象的所有属性以及相应的get、set方法1.遍历类对象的所有属性2.获取

Java中的Opencv简介与开发环境部署方法

《Java中的Opencv简介与开发环境部署方法》OpenCV是一个开源的计算机视觉和图像处理库,提供了丰富的图像处理算法和工具,它支持多种图像处理和计算机视觉算法,可以用于物体识别与跟踪、图像分割与... 目录1.Opencv简介Opencv的应用2.Java使用OpenCV进行图像操作opencv安装j

java Stream操作转换方法

《javaStream操作转换方法》文章总结了Java8中流(Stream)API的多种常用方法,包括创建流、过滤、遍历、分组、排序、去重、查找、匹配、转换、归约、打印日志、最大最小值、统计、连接、... 目录流创建1、list 转 map2、filter()过滤3、foreach遍历4、groupingB