- 浏览: 237956 次
- 性别:
- 来自: 常州
文章分类
- 全部博客 (165)
- Java基础 (49)
- 开发工具 (3)
- Python基础 (1)
- Oracle基础 (9)
- Java 符号计算 (0)
- 计算机基本原理 (10)
- SQL (6)
- javascript (16)
- HTML (2)
- XML (4)
- 程序员之路 (7)
- JDBC (1)
- Unicode (0)
- 字符编码 (3)
- JSP基础 (2)
- Servlet&JSP (9)
- MySQL基础 (1)
- UML基础 (1)
- Hibernate (2)
- Java包 (1)
- Spring (1)
- Struts2 (9)
- 系统命令 (1)
- Tomcat (1)
- Windows (1)
- Android (1)
- C#基础 (14)
- HTML5 (1)
- .NET基础 (1)
- 数据库基础 (2)
- ASP.NET基础 (7)
- 开源Java (3)
- 趣味算法 (1)
- 面向对象思想 (1)
- 软件应用 (1)
- Web工程 (1)
- jquery (2)
- JPA (0)
- 设计模式 (0)
最新评论
-
静夜独窗:
JavaBean组件能说的具体一点吗,我感觉这样说理解的不清晰 ...
EL 表达式语言 -
静夜独窗:
在Java中,不同字符集编码的转换是通过Unicode作为中介 ...
JavaWeb中的乱码产生与解决方案
分页显示数据时常常需要将页码列出来。
此处的Page类主要关注分页显示时候的页码的显示。
一. Page类
页码类如下:
import java.util.ArrayList; import java.util.List; public class Page { private boolean hasNext; private boolean hasPer; private int curPage; private int countPage; private int showPageNum;//显示出来的页码数量 private List<Integer> pageList; public void setShowPageNum(int showPageNum) { this.showPageNum = showPageNum; } public void setHasNext(boolean hasNext) { this.hasNext = hasNext; } public void setPageList(List<Integer> pageList) { this.pageList = pageList; } public List<Integer> getPageList() { pageList=new ArrayList(); if(curPage<showPageNum){ for(int i=1;i<=(countPage>showPageNum?showPageNum:countPage);i++){ pageList.add(i); } }else{ if(curPage-(showPageNum%2==0?showPageNum/2-1:showPageNum/2)>1 && curPage+showPageNum/2<=countPage){ for(int i=curPage-(showPageNum%2==0?showPageNum/2-1:showPageNum/2);i<=curPage+showPageNum/2;i++){ pageList.add(i); } }else if(curPage+showPageNum/2>countPage){ for(int i=countPage-showPageNum+1;i<=countPage;i++){ pageList.add(i); } } } return pageList; } public boolean isHasNext() { if(curPage+1>countPage){ hasNext=false; }else{ hasNext=true; } return hasNext; } public boolean isHasPer() { if(curPage-1<=0){ hasPer=false; }else{ hasPer=true; } return hasPer; } public void setHasPer(boolean hasPer) { this.hasPer = hasPer; } public int getCurPage() { return curPage; } public void setCurPage(int curPage) { this.curPage = curPage; } public int getCountPage() { return countPage; } public void setCountPage(int countPage) { this.countPage = countPage; }
二. 实验
以下实验需要显示设置总页数为12页。
设置当前页从1~12。以此查看查看得到的需要显示的页码列表。
1. 如果显示页码数为奇数
setShowPageNum(5) 显示5个页码
如下例:
public static void main(String[] args) { Page page=new Page(); page.setCountPage(12); page.setShowPageNum(5); for(int i=1;i<=page.getCountPage();i++){ page.setCurPage(i); System.out.print("当前页为第"+i+"页:\t"); System.out.println(page.getPageList()); } }
则输出:
当前页为第1页: [1, 2, 3, 4, 5]
当前页为第2页: [1, 2, 3, 4, 5]
当前页为第3页: [1, 2, 3, 4, 5]
当前页为第4页: [1, 2, 3, 4, 5]
当前页为第5页: [3, 4, 5, 6, 7]
当前页为第6页: [4, 5, 6, 7, 8]
当前页为第7页: [5, 6, 7, 8, 9]
当前页为第8页: [6, 7, 8, 9, 10]
当前页为第9页: [7, 8, 9, 10, 11]
当前页为第10页:[8, 9, 10, 11, 12]
当前页为第11页:[8, 9, 10, 11, 12]
当前页为第12页:[8, 9, 10, 11, 12]
2. 如果显示页码数为偶数
setShowPageNum(6) 显示6个页码
如下例:
public static void main(String[] args) { Page page=new Page(); page.setCountPage(12); page.setShowPageNum(6); for(int i=1;i<=page.getCountPage();i++){ page.setCurPage(i); System.out.print("当前页为第"+i+"页:\t"); System.out.println(page.getPageList()); } }
则输出:
当前页为第1页: [1, 2, 3, 4, 5, 6]
当前页为第2页: [1, 2, 3, 4, 5, 6]
当前页为第3页: [1, 2, 3, 4, 5, 6]
当前页为第4页: [1, 2, 3, 4, 5, 6]
当前页为第5页: [1, 2, 3, 4, 5, 6]
当前页为第6页: [4, 5, 6, 7, 8, 9]
当前页为第7页: [5, 6, 7, 8, 9, 10]
当前页为第8页: [6, 7, 8, 9, 10, 11]
当前页为第9页: [7, 8, 9, 10, 11, 12]
当前页为第10页:[7, 8, 9, 10, 11, 12]
当前页为第11页:[7, 8, 9, 10, 11, 12]
当前页为第12页:[7, 8, 9, 10, 11, 12]
3. 如果需要总页数小于需要显示页码数量
setCountPage(4) 总页数为4。
setShowPageNum(6) 显示4个页码。
如下例:
public static void main(String[] args) { Page page=new Page(); page.setCountPage(4); page.setShowPageNum(6); for(int i=1;i<=page.getCountPage();i++){ page.setCurPage(i); System.out.print("当前页为第"+i+"页:\t"); System.out.println(page.getPageList()); } }
则输出:
当前页为第1页: [1, 2, 3, 4]
当前页为第2页: [1, 2, 3, 4]
当前页为第3页: [1, 2, 3, 4]
当前页为第4页: [1, 2, 3, 4]
发表评论
-
Java NIO 基础学习
2013-09-21 16:24 937零、概述 1、传统IO的问题 2、非阻塞IO ... -
try finally 与 return
2013-09-02 16:11 9581、try、catch、finally语句中,在如果try ... -
Java的传值
2013-07-21 13:06 949这个问题一直以来都有误区。本质原因是那些写书的人,喜欢用“传 ... -
Java多线程——synchronized的问题
2013-06-14 15:51 1041一直以来都存在这样的问题: 多线程操作同一对象。该对象有 ... -
Java与操作系统的交互
2013-05-05 22:08 1705System类 System表示Java程序的运行平台。S ... -
java枚举
2013-04-06 15:59 899枚举,之前一直忽视了其存在。其实挺有用。 java5 ... -
Java语法细节
2013-02-03 11:19 924final关键字 final修饰的量以视为常量,当fin ... -
Java Socket 学习笔记
2013-01-29 23:42 955Socket:英文中的意思是插座。 两个Java应用程序 ... -
Java 线程同步
2013-01-27 23:17 1033理解Java线程状态: ... -
Java 与 C# 计算性能比较
2012-11-02 14:51 1159程序:寻找2亿以内的最大素数,从2开始寻找。 Java程序: ... -
Java数组的操作
2012-10-12 11:23 847一、复制数组 java.lang.System类中的静态 ... -
Java容器
2012-10-09 00:33 881Java集合类就像容器。把多个对象的引用放进容器中。即集合类主 ... -
Java日期处理
2013-01-31 23:05 859不得不吐槽一下Java的日期处理。太不爽了。 基本 ... -
java:Excel
2012-09-27 09:06 1122jxl操作excel 在开源世界中,有两套比较有影响的API ... -
dom4j
2012-07-07 17:21 2239dom4j 与JDOM一样,也是一种用于解析XML文档 ... -
JDOM基础
2012-07-07 17:20 1943JDOM Java Document Object Mode ... -
线程优先级 && 后台线程 && join线程
2012-07-02 23:08 46线程优先级 每个线 ... -
Java线程的运行状态(线程的生命周期)
2012-07-02 22:56 900新建和就绪 ... -
Java多线程 Thread类 和 Runnable接口
2012-07-02 22:13 1519Java的线程,即一个Thre ... -
Java反射
2012-07-02 20:22 848编译时类型和运行时类型 Java程序中的对象在运行时都会出现 ...
相关推荐
当从数据库查出数据过多时,分页条页码太多,将多余部分进行隐藏,永远只显示固定数量的页码
在本场景中,我们讨论的是一个特定的ASP分页程序,它能够显示页码,范围从数字1到10。这样的功能在处理大量数据时非常有用,因为它允许用户按需浏览网页内容,而不是一次性加载所有数据,从而提高用户体验和网站性能...
html+css实现简单分页页码效果源码,尚且没有复杂的后台,给前端新手学习之用
总结了一个分页显示部分页码的方法,内容详细,非常实用哦,解决了页码多的问题
3. **生成页码显示**:根据当前页码、总页数等信息生成分页显示的HTML代码。 4. **返回数据表**:返回当前页的数据子集。 #### 示例用法 1. **初始化Pageing实例**: ```csharp Pageing pager = new Pageing(); ...
3. **判断当前页的位置**:如果当前页位于显示页码范围的中间,那么保持不变;否则,调整页码范围使其包含当前页。 4. **生成分页元素**:使用JavaScript或jQuery动态创建页码元素,根据计算出的页码范围填充HTML。...
在本场景中,"ssh实现简单分页带页码显示"是指利用SSH框架来实现Web应用中的分页功能,并在用户界面展示页码,让用户能够方便地浏览大量数据。分页在很多情况下都是必要的,比如论坛、电商网站的商品列表等,它能...
1. **页码显示**:根据总页数和当前页数生成可点击的页码列表,例如“首页”、“上一页”、“下一页”、“末页”以及中间的数字页码。 2. **页码跳转**:用户点击页码或导航按钮时,插件会更新当前页面,并向后端...
在网页开发中,分页显示是一项常见的功能,它允许用户浏览大量数据时,一次只加载一部分内容,提高页面加载速度并提升用户体验。本示例中,我们看到了一个使用VBScript和ADO(ActiveX Data Objects)实现的ASP(Active ...
当数据量较大时,一次性加载所有数据可能导致性能问题,因此需要实现分页显示功能。本篇文章将详细讲解如何在C# WinForm应用中实现`DataGridView`的分页功能。 首先,我们需要了解`DataGridView`的基本用法。`...
并且当页码过多时使用省略号,这篇文章有样式的简单演示:https://blog.csdn.net/u013025627/article/details/50485327 样式只是自己的简单样式,不同的项目有不同的样式风格,只是提供分页时显示页面的方法
分页导航通常包含“上一页”、“下一页”和页码按钮,用户可以通过这些元素切换显示的数据块。在Ajax分页中,我们不再依赖页面刷新来切换页面,而是通过发送Ajax请求获取指定页的数据。 `jQuery`是一个广泛使用的...
分页的基本思想是将数据集分成多个小的部分,每次只显示其中的一部分,通过用户交互(如点击页码)来切换显示不同的部分。在JavaScript中,我们可以通过动态修改DOM元素的`display`属性来控制哪些数据被显示,从而...
int pagesize = 10;//每页显示记录数 int liststep = 20;//最多显示分页页数 int pages = 1;//默认显示第一页 if (request.getParameter("pages") != null) { pages = Integer.parseInt(request....//分页页码变量
在浏览具有大量数据的网页时(如论坛、博客等),传统的分页显示可能会导致页码过多,不仅占用页面空间,还会影响美观度。因此,设计一个能够根据当前页码自动调整显示范围的分页功能显得尤为重要。本程序的目标就是...
"仿网页分页页码"这个主题,主要涉及到如何在网页中实现类似百度、淘宝等大型网站的分页效果,让用户可以轻松浏览大量数据而不会感到压力。 首先,我们要理解分页的基本概念。分页通常由页码、上一页、下一页、跳转...
本篇文章将详细讲解如何使用jQuery分页插件来设置分页内容显示的数量。 首先,我们需要选择一个适合的jQuery分页插件。有许多开源的选项可供选择,例如jQuery Pagination Plugin、jQuery UI Paginator、Bootstrap-...
网上很多分页都是|< << ... 2 3 4 5 6 >> >|形式展现的,这段代码就实现了这种展现方式。
在IT行业中,分页显示数据是一项非常常见的技术,特别是在网页应用和大数据展示中。它能够有效地管理和呈现大量的信息,提高用户界面的响应速度,减轻服务器的负担,同时提供更好的用户体验。下面将详细介绍分页显示...