`
huxiuliang
  • 浏览: 118909 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jsp像百度一样的分页

    博客分类:
  • Java
阅读更多


package com.ssdb.struts.dbservice;

import org.apache.commons.lang.StringUtils;

public class Pager_2 {
   
    String Tabstart = "<table  width='95%' border='0'><tr><td>";
   
    String Tabend = "</td></tr></table>";
   
    String CurrPageFont1 = "页次:<font color='red'>";
   
    String CurrPageFont2 = "</font>/";
   
    String PageCountFont1 = "";
   
    String PageCountFont2 = "&nbsp;";
   
    String PrePageFont1 = "&nbsp;每页<font color='red'>";
   
    String PrePageFont2 = "</font>&nbsp;";
   
    String RecCountFont1 = "&nbsp;共计:<font color='red'>";
   
    String RecCountFont2 = "</font></td><td>";
   
    String FirstFont = "<font face=webdings>9</font>";
   
    String PrevFont = "<font face=webdings>7</font>";
   
    String NextFont = "<font face=webdings>8</font>";
   
    String LastFont = "<font face=webdings>:</font>";
   
    String Jump = "&nbsp;&nbsp;跳转:";
   
    String PageNumFont1 = "<font color='orange'>[";
   
    String PageNumFont2 = "]</font>";
   
    String PageNumFont3 = "";
   
    String PageNumFont4 = "";
   
    String LinkFont1 = "<font color='red'>";
   
    String LinkFont2 = "</font>";
   
    String LinkFont3 = "";
   
    String LinkFont4 = "";
   
    String key, re, CurrentPage, FirstPageUrl, PrevPageUrl, NextPageUrl, LastPageUrl, ipage;
   
    int PageCount;
   
    int prevpage, nextpage, PageStart, PageEnd, i;
   
    /**
         *
         * @param RecCount
         *                记录总数
         * @param RecPerPage
         *                每页记录
         * @param PageNum
         *                前后显示几个
         * @param url
         * @param key
         *                搜索的关键字
         * @return
         *
         */
    public String getPageToolBar(int RecCount, int CurrPage, int RecPerPage, int PageNum, String url, String key) {

    if (StringUtils.isNotEmpty(key)) {
       
        key = "&key=" + key;
    }
    StringBuffer sbf = new StringBuffer();
    // 共有多少页
    if (RecCount % RecPerPage == 0) {
        PageCount = RecCount / RecPerPage;
    } else {
        PageCount = ((RecCount / RecPerPage) + 1);
    }
    if (PageCount <= 1) {
        PageCount = 1;
    }
   
    // 上一页,下一页的页码
    prevpage = (CurrPage - 1);
    if (prevpage < 1) {
        prevpage = 1;
    }
    nextpage = (CurrPage + 1);
    if (nextpage > PageCount) {
        nextpage = PageCount;
    }
   
    if (CurrPage <= 1 && PageCount == 1) {
        CurrPage = 1;
        FirstPageUrl = "&nbsp;" + LinkFont3 + FirstFont + LinkFont4 + "&nbsp;";
        PrevPageUrl = "&nbsp;" + LinkFont3 + PrevFont + LinkFont4 + "&nbsp;";
        NextPageUrl = "&nbsp;" + LinkFont3 + NextFont + LinkFont4 + "&nbsp;";
        LastPageUrl = "&nbsp;" + LinkFont3 + LastFont + LinkFont4 + "&nbsp;";
    } else if (CurrPage <= 1) {
        CurrPage = 1;
        FirstPageUrl = "&nbsp;" + LinkFont3 + FirstFont + LinkFont4 + "&nbsp;";
        PrevPageUrl = "&nbsp;" + LinkFont3 + PrevFont + LinkFont4 + "&nbsp;";
        NextPageUrl = "&nbsp;<A href=\"" + url + "Page=" + nextpage + key + "\">" + LinkFont1 + NextFont + LinkFont2 + "</A>&nbsp;";
        LastPageUrl = "&nbsp;<A href=\"" + url + "Page=" + PageCount + key + "\">" + LinkFont1 + LastFont + LinkFont2 + "</A>&nbsp;";
    } else if (CurrPage >= PageCount) {
        CurrPage = PageCount;
        FirstPageUrl = "&nbsp;<A href=\"" + url + "Page=1" + key + "\">" + LinkFont1 + FirstFont + LinkFont2 + "</A>&nbsp;";
        PrevPageUrl = "&nbsp;<A href=\"" + url + "Page=" + prevpage + key + "\">" + LinkFont1 + PrevFont + LinkFont2 + "</A>&nbsp;";
        NextPageUrl = "&nbsp;" + LinkFont3 + NextFont + LinkFont4 + "&nbsp;";
        LastPageUrl = "&nbsp;" + LinkFont3 + LastFont + LinkFont4 + "&nbsp;";
    } else {
       
        FirstPageUrl = "&nbsp;<A href=\"" + url + "Page=1" + key + "\">" + LinkFont1 + FirstFont + LinkFont2 + "</A>&nbsp;";
        PrevPageUrl = "&nbsp;<A href=\"" + url + "Page=" + prevpage + key + "\">" + LinkFont1 + PrevFont + LinkFont2 + "</A>&nbsp;";
        NextPageUrl = "&nbsp;<A href=\"" + url + "Page=" + nextpage + key + "\">" + LinkFont1 + NextFont + LinkFont2 + "</A>&nbsp;";
        LastPageUrl = "&nbsp;<A href=\"" + url + "Page=" + PageCount + key + "\">" + LinkFont1 + LastFont + LinkFont2 + "</A>&nbsp;";
    }
    if (CurrPage - PageNum <= 1) {
        PageStart = 1;
    } else {
        PageStart = CurrPage - PageNum;
    }
    if (CurrPage + PageNum >= PageCount) {
        PageEnd = PageCount;
    } else {
        PageEnd = CurrPage + PageNum;
    }
   
    sbf.append(Tabstart);
    sbf.append(CurrPageFont1 + CurrPage + CurrPageFont2 + PageCountFont1 + PageCount + PageCountFont2 + PrePageFont1);
    sbf.append(RecPerPage + PrePageFont2 + RecCountFont1 + RecCount + RecCountFont2 + FirstPageUrl + PrevPageUrl);
    for ( i = PageStart ; i <= PageEnd ; i++) {
        if (i == CurrPage) {
        sbf.append("&nbsp;" + PageNumFont3 + i + PageNumFont4 + "&nbsp;");
        } else {
        sbf.append("&nbsp;<A href=\"" + url + "Page=" + i + key + "\">" + PageNumFont1 + i + PageNumFont2 + "</A>&nbsp;");
        }
    }
    sbf.append(NextPageUrl + LastPageUrl);
    sbf.append(Tabend);
    return sbf.toString();
    }
   
   
}

分享到:
评论
1 楼 luyan0711 2008-12-12  
顶你一个

相关推荐

    JSP实现百度谷歌分页页码功能源代码

    本示例聚焦于使用JSP(Java Server Pages)来实现类似百度和谷歌的分页功能。下面将详细解释如何通过JSP来创建这种功能,以及涉及到的关键知识点。 首先,我们要理解JSP的基础。JSP是一种基于Java的服务器端脚本...

    仿百度分页jsp版

    本项目"仿百度分页jsp版"是一个基于Maven构建的Java Web应用,其目标是实现与百度网站类似的分页效果。下面将详细介绍该项目涉及的关键知识点。 首先,**分页** 是网页设计中的一种策略,它将大量数据分割成多个小...

    jsp 分页jsp 分页

    jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页jsp 分页...

    java实现分页 jsp分页 分页

    java实现分页 jsp分页 分页java实现分页 jsp分页 分页java实现分页 jsp分页 分页java实现分页 jsp分页 分页java实现分页 jsp分页 分页java实现分页 jsp分页 分页

    jsp.rar_jsp 分页_jsp分页_jsp实现分页_分页

    "jsp.rar_jsp 分页_jsp分页_jsp实现分页_分页"这个压缩包显然包含了一套完整的 JSP 分页解决方案。下面我们将详细探讨 JSP 实现分页的相关知识点。 1. **JSP基本概念**: JSP 是一种基于 Java 的服务器端脚本语言...

    jsp仿百度、谷歌分页解决分页太多,始终显示一部分的页码

    本文将深入探讨如何使用JavaScript和jQuery实现一个类似百度、谷歌的智能分页解决方案,解决分页数量过多导致用户界面拥挤的问题。 首先,我们需要理解分页的基本原理。分页通常涉及到两个关键参数:每页显示的条目...

    Java Ajax分页,jsp ajax分页

    Java AJAX(Asynchronous JavaScript and XML)分页与JSP(JavaServer Pages)相结合,可以提供无需刷新整个页面即可动态加载更多内容的能力,提高用户体验。本教程将深入探讨如何使用AJAX、JavaScript以及MySQL...

    jsp 分页显示 标签 仿百度那样的分页效果

    本知识点将详细讲解如何在JSP中实现百度风格的分页效果。 首先,我们需要理解分页的基本原理。分页通常涉及两个关键部分:前端展示和后端处理。前端负责展示分页按钮和当前页数,后端则处理请求,根据用户选择的...

    JSP通用分页显示1.2.rar_java 分页显示_jsp_jsp 分页_jsp 分页_jsp分页

    **JSP分页显示技术详解** 在Web开发中,数据量较大的时候,通常需要采用分页的方式来展示数据,以提高用户体验并减轻服务器负担。JSP(JavaServer Pages)作为Java平台上的动态网页技术,提供了丰富的功能来实现这...

    jsp 和 servlet实现分页

    jsp 和 servlet 实现分页 jsp 和 servlet 是 Java 语言中两个最重要的技术,分别用于开发 Web 应用程序的展示层和控制层。jsp 主要用于生成动态网页,而 servlet 则用于处理请求和响应。今天,我们将学习如何使用 ...

    模拟百度的JSP分页源代码

    这里我们讨论的是一个模拟百度分页功能的JSP项目,它利用了javaBean、servlet以及JSP的开发模式。下面将详细阐述相关知识点。 首先,JavaBean是Java中的一种组件模型,它定义了一种规范,使得Java对象可以在不同...

    jsp假分页技术jsp假分页

    总结,JSP假分页技术是一种简化版的分页实现,适用于数据量较小的情况。然而,当数据量较大时,为了优化性能,推荐采用真分页技术,即在数据库层面进行分页操作。同时,结合前端分页控件,可以提供更好的用户体验。

    jsp已经数据库的分页技术

    ### 分页技术在JSP与数据库中的应用 #### 引言 在Web开发中,当数据量庞大时,一次性加载所有数据至前端显示是不现实的,不仅会大大增加服务器负担,降低用户体验,而且可能因数据量过大而无法正常加载。因此,分页...

    jsp+javabean实现分页

    本项目利用JavaServer Pages(JSP)和JavaBeans组件实现了分页功能,旨在帮助开发者更好地理解和应用这一技术。 首先,JSP是Java平台上的动态网页技术,允许将Java代码嵌入HTML或XML文档中,以生成动态内容。JSP的...

    Oracle&JSP分页和Oracle分页

    总结来说,Oracle和JSP结合实现分页涉及以下几个步骤:在Oracle中构造分页查询,使用JDBC在Servlet中执行查询,然后在JSP页面中展示数据。理解并熟练掌握这些步骤对于开发高效、用户友好的数据驱动网站至关重要。在...

    jsp+servlet+oracle模仿百度分页

    带学员课上做的oracle模仿百度分页样式的例子。比较适合初学者参考,jdbc工具类是自己写的,没有使用第三方分页组件。tomcat是apache-tomcat-7.0.41,myeclipse是MyEclipse 9.0,oracle是11g。例子中用的是海量数据...

    JSP 利用标签实现分页技术

    3. **使用自定义标签**:在JSP页面上,我们可以像使用标准HTML标签一样使用自定义分页标签。只需在JSP页面中引入TLD文件,并在需要的地方使用标签,传入必要的参数,如当前页数和每页条目数。 4. **处理请求和响应*...

    jsp+jstl实现分页

    jsp+jstl实现分页,简单的分页

    jsp分页显示,查询书店的数据

    jsp分页jsp分页jsp分页jsp分页jsp分页jsp分页jsp分页jsp分页jsp分页jsp分页jsp分页jsp分页jsp分页jsp分页

Global site tag (gtag.js) - Google Analytics