1、分页的属性模型
public class PageVo {
private int countPage;// 总页数
private int conutNote;// 总条数
private int previousPage;// 上一页
private boolean previous;// 判断上一页
private int nextPage;// 下一页
private boolean next;// 判断下一页
private int nowPage;// 当前页
private int HeadPage;// 首页
private int pageNote;// 每一页显示的条数
public int getConutNote() {
return conutNote;
}
public void setConutNote(List list) {
this.conutNote = list.size();
}
public int getCountPage() {
return countPage;
}
public void setCountPage(List list) {
if (list.isEmpty()) {
this.countPage = 1;
} else if (list.size() == 0) {
this.countPage = 1;
} else {
this.countPage = list.size() % this.getPageNote() == 0 ? list
.size()
/ this.getPageNote() : list.size() / this.getPageNote() + 1;
}
}
public int getHeadPage() {
return HeadPage;
}
public void setHeadPage(int headPage) {
HeadPage = headPage;
}
public int getNextPage() {
if (this.nextPage < this.countPage) {
this.nextPage++;
}
return this.nextPage;
}
public void setNextPage(int nextPage) {
this.nextPage = nextPage;
}
public int getNowPage() {
return nowPage;
}
public void setNowPage(int nowPage) {
if (nowPage > this.countPage) {
nowPage = 1;
}
this.nowPage = nowPage;
}
public int getPageNote() {
return pageNote;
}
public void setPageNote(int pageNote) {
this.pageNote = pageNote;
}
public int getPreviousPage() {
if (this.previousPage > this.HeadPage) {
this.previousPage--;
}
return previousPage;
}
public void setPreviousPage(int previousPage) {
this.previousPage = previousPage;
}
public boolean isNext() {
if (this.nextPage >= this.countPage || this.countPage == this.HeadPage) {
this.next = false;
} else {
this.next = true;
}
return this.next;
}
public void setNext(boolean next) {
this.next = next;
}
public boolean isPrevious() {
if (this.nowPage <= this.HeadPage) {
this.previous = false;
} else {
this.previous = true;
}
return this.previous;
}
public void setPrevious(boolean previous) {
this.previous = previous;
}
}
2、数据处理模型
public class PageDao {
/**
* @param args
*/
//将集合分页
public List distributePage(List list, int nowPage, int pageNote) {
List pageList = null;
PageVo vo = new PageVo();
vo = this.encapsulationPage(list, nowPage, pageNote);
pageList = list.subList(vo.getNowPage() * vo.getPageNote()
- vo.getPageNote(), list.size());
if (pageList.size() > vo.getPageNote()) {
pageList = list.subList(vo.getNowPage() * vo.getPageNote()
- vo.getPageNote(), vo.getNowPage() * vo.getPageNote());
}
return pageList;
}
//封装页面属性
public PageVo encapsulationPage(List list, int nowPage, int pageNote){
PageVo page = new PageVo();
page.setHeadPage(1);
page.setPageNote(pageNote);
page.setConutNote(list);
page.setCountPage(list);
page.setNowPage(nowPage);
page.setNextPage(nowPage);
page.setPreviousPage(nowPage);
return page;
}
}
分享到:
相关推荐
本示例主要讲解如何利用List接口的获取子List方法来实现对List的分页功能。这个过程涉及到Java集合框架的理解、数据范围的计算以及如何构建分页模型。 首先,我们需要理解Java中的List接口。List是Java集合框架的一...
在Java编程中,数据分页显示是Web应用中常见的需求,尤其在处理大量数据时,为了提高用户体验并优化服务器性能,通常需要将数据分成多个页面进行展示。本篇将深入探讨Java实现数据分页显示的核心技术和策略。 首先...
总之,"list假分页的demo"展示了如何在内存中利用list实现分页功能,这种技术适用于数据量适中的场景,可以提高用户体验并减少服务器请求。在实际应用中,应根据数据量和性能需求选择合适的分页策略。
### Java多线程分页查询知识点详解 #### 一、背景与需求分析 在实际的软件开发过程中,尤其是在处理大量数据时,如何高效地进行数据查询成为了一个关键问题。例如,在一个用户众多的社交平台上,当用户需要查看...
Java分页组件是一种在开发Java Web应用程序时非常实用的工具,它可以帮助开发者高效地处理大量数据的展示,尤其是在用户需要浏览或操作大量记录时。在Web应用中,通常不建议一次性加载所有数据到客户端,因为这可能...
"list分页,可直接用"的标题表明这是一个无需依赖任何特定框架或插件的分页解决方案,适合那些希望保持代码简洁、自定义程度高的开发者使用。 在描述中提到的“通过list集合分页”,暗示了这个方法可能基于Java中的...
在Java编程中,分页查询是一项非常重要的功能,特别是在处理大量数据时,它能有效地减少内存负担,提高应用性能。本教程将详细讲解如何在Java中实现不分框架的分页查询,同时涵盖对MySQL和SQL Server数据库的支持。 ...
总结来说,面向对象的Java JDBC分页查询涉及到创建Page类来存储分页信息,构造Oracle兼容的SQL语句,以及使用PreparedStatement执行查询。在实际开发中,我们还需要关注性能优化、异常处理和代码的可维护性,确保...
在Java编程中,分页是数据管理中一个常见的需求,特别是在处理大数据集时,为了提高用户体验和系统性能,我们通常不会一次性加载所有数据,而是分批次地加载,这就是分页的基本概念。本教程将深入讲解如何使用Java...
在传统的JDBC操作中,可以利用`PreparedStatement`的`setFirstResult()`和`setMaxResults()`方法实现分页。这两个方法分别对应偏移量和限制大小。例如: ```java String sql = "SELECT * FROM table LIMIT ?, ?";...
在Java开发中,分页功能是一项非常常见的需求,特别是在处理大量数据时,为了提高用户体验和系统性能,我们通常会将数据进行分批加载,这就是分页的原理。本篇文章将详细探讨如何使用Java实现一个分页工具类,以及在...
在分页查询中,我们可以利用Hibernate的Criteria API或HQL(Hibernate Query Language)来实现。通常,我们会通过设置`setFirstResult`(起始位置)和`setMaxResults`(最大返回结果数)来实现分页查询。例如: ```...
总结,Java中利用`List`的`subList`方法进行分页是一种简洁高效的方式,只需要维护好当前页、每页记录数和总数据数,就可以轻松地实现分页功能。`PageModel`类提供了一个基础框架,你可以根据实际需求进行扩展和完善...
在Java中,我们可以利用JDBC(Java Database Connectivity)或者ORM框架如Hibernate、MyBatis等来实现分页。以JDBC为例,以下是一个简单的分页查询示例: ```java public List<User> getUsersByPage(int current...
例如,在Spring中,我们可以利用Pageable接口和Page对象来实现分页。以下是一个简单的示例: ```java Pageable pageable = PageRequest.of(pageNumber, pageSize, Sort.by(Sort.Direction.DESC, "id")); List<User>...
本实例将介绍如何利用Java和JSP实现一个简单的分页显示功能。 首先,我们需要理解分页的基本原理。分页通常涉及到两个关键参数:当前页码(currentPage)和每页显示的条目数量(pageSize)。通过这两个参数,我们...
Java中的分页功能是数据库操作中非常常见的一种技术,它允许我们从大量数据中按需获取部分信息,提高用户体验并减少服务器压力。本示例将详细介绍如何在Java中实现分页,以及涉及到的关键知识点。 首先,我们需要...
在Java开发中,分页是常见的数据处理方式,特别是在大数据量的展示场景下,它可以有效减少内存负担,提高用户体验。本篇文章将详细讲解在Oracle数据库环境下,Java实现分页的三种方法。 一、JDBC手动分页 1. **...
根据提供的文件信息,我们可以分析出该段代码是用于实现基于Java技术的Web应用程序中的分页功能。虽然这里的代码示例采用的是ASP.NET的语法结构,但我们可以从中抽取出与Java分页相关的概念和技术要点,并结合Java...
在SSH框架中,我们可以利用Hibernate的Criteria API或HQL(Hibernate Query Language)来实现分页查询。 1. **Struts2分页**: 在Struts2中,我们可以使用插件如DisplayTag或EasyUI来实现分页。DisplayTag是一个...