此篇文章和上篇文章都是在解决不通过数据库进行分页,而是查询出List结果集之后的分页问题
后台代码:
flightList:数据集合 perPageNum:每页显示的数据量 pageCount:总页数 pageNum:当前要显示第几页页数 flightPageList :分页后的需要显示的数据结果集
int pageNum=1; // 当前要显示第几页页数
int perPageNum=50; // 每页显示的数据量
if(request.getParameter("pageNum")==null){
pageNum=1;
}else{
pageNum=Integer.parseInt(request.getParameter("pageNum"));
}
//计算总页数
int pageCount = 0;
if (flightList.size() % perPageNum == 0) {
pageCount = flightList.size() / perPageNum;
} else {
pageCount = (flightList.size() / perPageNum) + 1;
}
//超过总页数置为最后一页
if (pageNum > pageCount) {
pageNum = pageCount;
}
//计算需要显示的结果数据
List<FmeToday> flightPageList = new ArrayList<FmeToday>();
for (int i = ((pageNum-1) * perPageNum);
i < flightList.size() && i < ((pageNum) * perPageNum) && pageNum > 0; i++) { flightPageList.add(flightList.get(i));
}
}
request.setAttribute("flightPageList", flightPageList);
request.setAttribute("pageNum", pageNum);
request.setAttribute("pageCount", pageCount);
页面代码:
<%
int pageNum=Integer.parseInt(request.getAttribute("pageNum").toString()); //后台传到页面的当前页数
int pageCount=Integer.parseInt(request.getAttribute("pageCount").toString()); //总页数
%>
<table width="100%" >
<tr>
<td width="40%"> </td>
<td align="right">
<%
if(pageNum<=1){
%>
<font style="text-align:center;color: #ccccff">上一页</font>
<%
}else{
%>
<a href="history.action?pageNum=<%= pageNum-1 %>" >
<font style="text-align: center;color: blue;">上一页</font></a>
<% } %>
</td>
<td> </td>
<td align="left">
<%
if(pageCount<=pageNum){
%>
<font style="text-align: right;color: #ccccff">下一页</font>
<%
}else{
%>
<a href="history.action?pageNum=<%= pageNum+1 %>" >
<font style="text-align: right;color: blue;">下一页</font></a>
<%} %>
</td>
<td align="right">当前为第<%=pageNum %>页 共<%=pageCount%>页 </td>
</tr>
</table>
分享到:
相关推荐
java 对listj集合的分页方法 直接调用这个方法就可以了
在Java中, List对象的分页思想可以通过使用subList()方法来实现。subList()方法可以将一个大的List对象分割成多个小的List对象,每个小的List对象包含一定数量的元素。例如,以下代码将一个大的List对象分割成多个...
java中List集合分页的方法
下面,我们将深入探讨一个Java通用分页方法的实现细节,以及如何在实际项目中运用这一技术。 #### 分页类`Pager`详解 `Pager`类是整个分页逻辑的核心。它包含了分页所需的所有属性和方法,如总行数、每页显示的...
通过获取list一段索引(startIndex,endIndex),实现“分页”功能
在Java编程中,分页是数据管理中常见的一种需求,特别是在处理大量数据时,为了提高用户体验,我们需要将数据分批加载。本示例主要讲解如何利用List接口的获取子List方法来实现对List的分页功能。这个过程涉及到Java...
在Java编程中,数据分页显示是Web应用中常见的需求,尤其在处理大量数据时,为了提高用户体验并优化服务器性能,通常需要将数据分成多个页面进行展示。本篇将深入探讨Java实现数据分页显示的核心技术和策略。 首先...
#### 二、Java多线程分页查询原理及实现 ##### 1. 分页查询基础概念 分页查询是指在查询数据时,将数据分成多个页面展示,而不是一次性返回所有数据。这种方式能够有效地减少单次查询的数据量,从而提高查询速度和...
用于分页 带源文件 只支持List
在Java或其他支持list的数据结构的编程语言中,假分页可以通过以下步骤实现: - 首先,将整个数据集加载到一个list对象中。 - 然后,根据每页显示的条目数和当前页码计算出起始和结束索引。 - 最后,从list中...
在Java Web开发中,分页组件一般会包含以下几个关键功能: 1. **参数设置**:支持设置当前页数、每页显示条数、总记录数等参数,这些参数可以通过HTTP请求传递。 2. **数据查询**:根据设定的分页参数,组件需要能...
在Java中,类是对象的蓝图,包含了数据(字段)和操作这些数据的方法。为了实现分页查询,我们可以创建一个专门的Page类,包含当前页数、每页记录数、总记录数等属性,以及获取和设置这些属性的方法。 接下来,我们...
本文将深入探讨Java中实现分页处理的方法,以及如何通过代码来实现这一功能。 首先,我们需要理解分页的基本概念。分页是指将数据库查询结果分割成多个部分,每个部分称为一页,用户可以逐页浏览数据,而不是一次性...
二、Java中的分页查询 1. JDBC基础:Java标准API中的JDBC(Java Database Connectivity)提供了与数据库交互的接口和类。通过`Statement`或`PreparedStatement`对象执行SQL语句,并使用`ResultSet`对象获取结果。 ...
总结,Java中利用`List`的`subList`方法进行分页是一种简洁高效的方式,只需要维护好当前页、每页记录数和总数据数,就可以轻松地实现分页功能。`PageModel`类提供了一个基础框架,你可以根据实际需求进行扩展和完善...
综上所述,Java中的分页实现多种多样,可以根据项目需求和所使用的框架选择合适的方法。无论哪种方式,关键在于理解分页的核心原理,即通过偏移量和限制大小来控制数据的获取范围。合理地运用分页技术,既能优化...
Java中的数字分页是Web应用开发中常见的需求,特别是在大数据量的展示场景下,为了提高用户体验,需要将数据分批次加载。Struts2框架作为Java Web开发中的热门选择,提供了强大的分页支持。本主题主要讲解如何在...
在Java开发中,分页是常见的数据处理方式,特别是在大数据量的展示场景下,它可以有效减少内存负担,提高用户体验。本篇文章将详细讲解在Oracle数据库环境下,Java实现分页的三种方法。 一、JDBC手动分页 1. **...
Java中的分页技术是Web开发中处理大数据量的关键方法,主要目的是提高用户体验和系统性能。在数据量较大的情况下,一次性加载所有数据不仅会消耗大量内存,也会使用户等待时间变长。因此,分页技术应运而生,它允许...
总结来说,自定义Java分页标签是一种高效的方法,可以让你在JSP中轻松实现带条件的分页查询。通过这种方式,你可以灵活地控制查询逻辑,同时保持视图层的清晰和简洁,提升代码的可维护性和复用性。