java实现数字分页

问题描述

请提供具体的代码。谢了!邮箱:huqike5@126.com

解决方案

解决方案二:
写个自定义标签吧!给你个例子,前端:<fn:pageurl="/profile/allQuestionAndAnswer?userId=${userId}"></fn:page>,后端:privatestaticfinallongserialVersionUID=-1885082542634459990L;privatestaticfinalStringPAGE_FIRST_DIV="<divclass="pagelist">";privatestaticfinalStringPAGE_END_DIV="</div>";privatestaticfinalintPAGE_BETWEEN_SIZE=4;//当前页的前后页数间距privatestaticfinalintPAGE_FIRST_LAST_BETWEEN_SIZE=2;privateStringurl;privateStringpageName="entityPage";publicStringgetPageName(){returnpageName;}publicvoidsetPageName(StringpageName){this.pageName=pageName;}publicStringgetUrl(){returnurl;}publicvoidsetUrl(Stringurl){this.url=url;}@OverridepublicintdoStartTag()throwsJspException{StringBufferpageSb=newStringBuffer();Objectobj=RequestUtils.getRequest().getAttribute(pageName);intcurPage=1;inttotalPage=1;if(obj!=null){if(objinstanceofEntityPage){EntityPageentityPage=(EntityPage)obj;curPage=entityPage.getCurrentPage();totalPage=entityPage.getPageCount();}elseif(objinstanceofFnEntityPage){FnEntityPageentityPage=(FnEntityPage)obj;curPage=entityPage.getCurrentPage();totalPage=entityPage.getPageCount();}}if(obj!=null&&totalPage>1){pageSb.append(PAGE_FIRST_DIV);//上一页if(curPage==1){pageSb.append("<spanclass="disabled">上一页</span>");}else{Stringparam=""+(curPage-1);pageSb.append("<ahref=""+"javascript:page('"+param+"')">上一页</a>");}intbeginPage=curPage-PAGE_BETWEEN_SIZE;intendPage=curPage+PAGE_BETWEEN_SIZE;if(endPage>totalPage){endPage=totalPage;}if(beginPage<1){beginPage=1;}//如果beginPage>2if(beginPage>PAGE_FIRST_LAST_BETWEEN_SIZE){StringfirstParam=""+1;pageSb.append("<ahref=""+"javascript:page('"+firstParam+"')">"+1+"</a>");StringsecondParam=""+2;pageSb.append("<ahref=""+"javascript:page('"+secondParam+"')">"+2+"</a>");pageSb.append("...");}for(inti=beginPage;i<=endPage;i++){if(curPage==i){pageSb.append("<spanclass="current">"+i+"</span>");}else{Stringparam=""+i;pageSb.append("<ahref=""+"javascript:page('"+param+"')">"+i+"</a>");}}if(endPage<(totalPage-1)){StringfirstParam=""+(totalPage-1);pageSb.append("...<ahref=""+"javascript:page('"+firstParam+"')">"+(totalPage-1)+"</a>");StringsecondParam=""+(totalPage);pageSb.append("<ahref=""+"javascript:page('"+secondParam+"')">"+(totalPage)+"</a>");}//下一页if(curPage==totalPage){pageSb.append("<spanclass="disabled">下一页</span>");}else{Stringparam=""+(curPage+1);pageSb.append("<ahref=""+"javascript:page('"+param+"')">下一页</a>");}//处理分页请求pageSb.append("<scripttype="text/javascript">");pageSb.append("functionpage(curPage){");pageSb.append("varpageform=document.getElementById('pageform');");pageSb.append("document.getElementById("pc.currentPage").value=curPage;");pageSb.append("pageform.submit();");pageSb.append("}");pageSb.append("</script>");pageSb.append(PAGE_END_DIV);}JspWriterout=pageContext.getOut();try{out.print(pageSb.toString());}catch(IOExceptione){e.printStackTrace();}returnTag.SKIP_BODY;}
解决方案三:
前面的数字固定死了,把当前的页数提交到相应的servlet或者action,大于10的页数就通过点击一次下一页,当前页数+1,提交过去

时间: 2024-07-31 17:48:08

java实现数字分页的相关文章

asp.net中Datalist使用数字分页的实现方法

复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Test(Datalist数字分页).aspx.cs" Inherits="Test_Datalist数字分页_" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "

关于php,mysql,html的数字分页和文本分页的两种分页样式供大家参考

<?php require ROOT_PATH.'includer/header.inc.php'; ?> 博友界面 <?php while(!!$_rows=_fetch_array_list($_result,MYSQL_ASSOC)){ $_html = array(); $_html['tg_username'] = $_rows['tg_username']; $_html['tg_face'] = $_rows['tg_face']; $_html['tg_sex'] = $

JAVA关于数字取整问题

问题描述 JAVA关于数字取整问题 如果double值为:18000 则取10000如果值为 39000 则取30000:就是如果值大于几万,则取万,后面为0 解决方案 Java中的数字问题Java向上向下取整的问题 解决方案二: double a = 19000;int b =(int)a/10000 * 10000

java连连看数字换图片数组越界问题

问题描述 java连连看数字换图片数组越界问题 Jbutton 按钮数字换成图片后,只有部分按钮有图片,有的按钮上的图片不能显示.提示说数组越界,但具体不知道怎么回事.按钮数组是6*5,存储按钮位置的数组是8*7,调用图片的代码private static Icon[] icons = new ImageIcon[6*5]; private static final String imgDir=""d:/shuiguo"";static{ try{ File dir

java中数字大写转小写

问题描述 java中数字大写转小写 如一千元转1000.0 壹仟壹佰玖拾捌万元转成11980000 解决方案 http://www.jobui.com/mianshiti/it/java/7166/ 解决方案二: 数字小写转大写数字小写转大写数字小写转大写 解决方案三: 你自己封装一个方法就行啊!!!很简单的,就是多用字符串截取!!!你想嘛,大写就那么几种情况!你都考虑进来就行了!!!不难. 解决方案四: 解决方案五: 解决方案六: http://blog.csdn.net/ggy2014/ar

java-利用Java,JSP查询分页

问题描述 利用Java,JSP查询分页 要求从数据库中查询数据,并用网页的分页效果显示.要求有上一页,下一页,当前页码, 解决方案 jsp如何进行查询分页jsp查询结果分页 解决方案二: JavaScript很多开源的框架都有分页,你去搜一个吧,至于后台怎么写,你可以看看分页技术相关的资料,方法很多,如果是mysql,感觉相对容易些,用Limit 解决方案三: jsp如何进行查询分页 jsp查询结果分页

sql查询-java 一对多分页 查询 如何实现

问题描述 java 一对多分页 查询 如何实现 有四个表,主表a,子表b c d,a和b是一对多,a和c是一对多,b和d是一对多,想要对主要a做分页查询, 同时查询出字表b c d的数据,用mybits,如何查询?是先查主表a,再分别查询子表,也就是一共四个sql查询,还是用表连接查询呢? 解决方案 http://www.oschina.net/question/144009_146528?sort=time http://blog.csdn.net/zhangweiwtmdbf/article

java组合查询+分页,求大神指点

问题描述 java组合查询+分页,求大神指点 我在第二页用组合查询查第一页的内容查不到,但是在第一页用组合查询查后面页的内容就查的到,这个问题如何解决,由于小弟是初学java,还请各位大神指点一二,感激不尽 解决方案 你用的什么数据库啊??? 如果是sql server 就使用top吧 如果是mysql 就使用limit吧 如果是oracle 就使用rowId吧 我说的只是一个大概的关键字,你可以百度这些关键字去找自己想要的答案,,,,

java 大数字代码如何定义

问题描述 java 大数字代码如何定义 java 代码如何定义1100亿? 定义为常量,比如 private static int number = 1100 解决方案 大数字及大数字运算,推荐使用java.math.BigDecimal.我想这个类可以满足你的一般需求. 你提到的100亿,下面的代码就构造了一个100亿. import java.math.BigDecimal; public class TestBD{ public static void main(String[] args