`
tolys
  • 浏览: 118232 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

JSP仿百度分页,谷歌分页页码处理

阅读更多

转载请勿删除此消息
本文出处: http://blog.csdn.net/tolys/archive/2007/10/06/1813197.aspx

 像百度一样的jsp分页效果,像goolge一样的分页效果!
 根据设定参数一次取一页记录内容显示

代码如下:

<%@ page language="java" pageEncoding="GB2312"%>
<%
    String path 
= request.getContextPath();
    String basePath 
= request.getScheme() + "://"
            
+ request.getServerName() + ":" + request.getServerPort()
            
+ path + "/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
    
<head>
        
<base href="<%=basePath%>">

        
<title>仿BAIDU & GOOGLE 分页页码显示格式</title>
        
<meta http-equiv="pragma" content="no-cache">
        
<meta http-equiv="cache-control" content="no-cache">
        
<meta http-equiv="expires" content="0">
        
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
        
<meta http-equiv="description" content="This is my page">
        
<style>
        
<!--
            body
...{
                .p
...{
                    PADDING
-LEFT: 18px; FONT-SIZE: 14px; WORD-SPACING: 4px
                }

            }

        
-->
        
</style>
    
</head>

    
<body>
        
<div class="p">
            
<%
                
int pagesize = 10;//每页显示记录数
                int liststep = 20;//最多显示分页页数
                int pages = 1;//默认显示第一页
                if (request.getParameter("pages"!= null...{
                    pages 
= Integer.parseInt(request.getParameter("pages"));//分页页码变量
                }

                
//sql="select count(*) from table";//取出记录总数,把*换成记录名性能更加
                int count = 305;//假设取出记录总数
                int pagescount = (int) Math.ceil((double) count / pagesize);//求总页数,ceil(num)取整不小于num
                if (pagescount < pages) ...{
                    pages 
= pagescount;//如果分页变量大总页数,则将分页变量设计为总页数
                }

                
if (pages < 1...{
                    pages 
= 1;//如果分页变量小于1,则将分页变量设为1
                }

                
int listbegin = (pages - (int) Math.ceil((double) liststep / 2));//从第几页开始显示分页信息
                if (listbegin < 1...{
                    listbegin 
= 1;
                }

                
int listend = pages + liststep/2;//分页信息显示到第几页
                if (listend > pagescount) ...{
                    listend 
= pagescount + 1;
                }


                
//显示数据部分
                int recordbegin = (pages - 1* pagesize;//起始记录
                int recordend = 0;
                recordend 
= recordbegin + pagesize;
                
//最后一页记录显示处理
                if (pages == pagescount) ...{
                    recordend 
= (int) (recordbegin + pagesize * (count % pagesize) * 0.1);
                }

                
//Connection conn = null;//要测试显示数据请自己链接数据库
                
//PreparedStatement stmt = null;
                
//String strSql = "select * from usertable limit recordbegin,pagesize";//取出分页记录,SQL因数据库而异!
                
//stmt = conn.prepareStatement(strSql);
                
//ResultSet rs = stmt.executeQuery();
                
//while(rs.next())){
                
//    response.getWriter().println(""+rs.getString("userId")+"<br>");//显示取出的数据
                
//}
                for (int i = recordbegin; i < recordend; i++...{
                    response.getWriter().println(
"record " + i + "<br>");
                }


                
//显示数据部分

                
//<显示分页信息
                
//<显示上一页
                if (pages > 1...{
                    response.getWriter().println(
                    
"<a href=?pages=" + (pages - 1+ ">上一页</a>");
                }
//>显示上一页
                
//<显示分页码
                for (int i = listbegin; i < listend; i++...{
                    
if (i != pages) ...{//如果i不等于当前页
                        response.getWriter().println(
                        
"<a href=?pages=" + i + ">[" + i + "]</a>");
                    }
 else ...{
                        response.getWriter().println(
"[" + i + "]");
                    }

                }
//显示分页码>
                
//<显示下一页
                if (pages != pagescount) ...{
                    response.getWriter().println(
                    
"<a href=?pages=" + (pages + 1+ ">下一页</a>");
                }
//>显示下一页
                
//>显示分页信息
            %>
        
</div>
    
</body>
</html>
分享到:
评论

相关推荐

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

    百度和谷歌的分页设计巧妙地解决了这个问题,它们只显示一部分页码,并在两端添加省略号,表示存在未显示的页码。这种设计既保留了导航的便利性,又避免了用户界面的混乱。要实现这样的效果,我们需要以下几个步骤:...

    仿百度分页jsp版

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

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

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

    java仿百度分页

    Java仿百度分页是一种常见的网页分页实现方式,它的核心思想是通过自定义标签库(JSP Tag Library)和Java后端代码配合,提供一种简洁、高效的分页展示方案。百度分页的设计考虑了用户体验和易用性,使得在大量数据...

    jsp+servlet+oracle模仿百度分页

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

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

    标题中的“jsp分页显示标签”指的是JSP中可以使用的特定标签库,如JSTL(JavaServer Pages Standard Tag Library)或自定义标签,来简化分页逻辑的实现。JSTL的`&lt;c:forEach&gt;`标签可以用于循环输出分页按钮,而`...

    JSP实现真分页和假分页

    3. JSP逻辑处理:在JSP页面中,使用Java代码段或自定义标签处理分页逻辑。接收请求参数,计算LIMIT和OFFSET值,然后执行SQL查询。 4. 数据绑定:将查询结果集绑定到JSP页面的表格中。 5. 分页导航:根据总记录数和...

    JSP实现类似百度,google的分页

    在网页开发中,分页是一种常见的用户...综上所述,实现JSP分页涉及前端界面设计、后端Servlet处理、数据库查询以及用户体验优化等多个方面。通过熟练掌握这些知识点,你可以构建出像百度和Google一样高效的分页系统。

    使用JSP实现查询分页

    本文将深入探讨如何使用JSP(Java Server Pages)来实现查询分页,这是一项在网页开发中频繁遇到且必须掌握的技术。 ### 分页技术的重要性 分页技术主要解决的是当数据量庞大时,一次性加载所有数据到页面会导致...

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

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

    jsp +struts 分页经典

    本项目名为“jsp +struts 分页经典”,显然是一个利用这两种技术实现的分页展示数据的案例。下面我们将深入探讨JSP和Struts框架,以及它们在分页、查询和数据操作中的应用。 首先,JSP是Java平台上的动态网页技术,...

    纯JSP实现真分页

    【描述】提到的"程序中只用到了JSP页面,来实现分页查询Oracle数据库",意味着开发者在JSP页面中直接处理了与数据库交互的部分,包括建立数据库连接、执行SQL查询语句以及处理查询结果。通常,这种做法会将业务逻辑...

    jsp页面数据分页通用组件

    **JSP页面数据分页通用组件详解** 在Web开发中,数据分页是常见的功能,尤其是在处理大量数据时,为了提高用户体验和加载速度,通常会将数据分成多个页进行显示。`jsp页面数据分页通用组件`就是这样一个工具,它为...

    仿照百度分页样式的代码

    ### 仿照百度分页样式的代码解析与知识点详解 #### 一、代码背景与应用场景 本代码示例实现了一个类似百度网站分页显示数据的功能。适用于网站开发中需要对大量数据进行分页展示的场景,例如新闻列表、论坛帖子等。...

    JSP分页技术,非常好的的学习Jsp分页技术的教程,适合初学者

    ### JSP分页技术详解:初学者的完美指南 #### 引言 在现代Web开发中,数据展示的效率和用户体验至关重要。对于大型数据库或数据集的处理,一次性加载所有数据不仅消耗大量资源,还可能导致页面加载缓慢,严重影响...

    jsp假分页技术jsp假分页

    - 考虑到用户可能会直接访问特定页码,需要处理缺失参数的情况。 总结,JSP假分页技术是一种简化版的分页实现,适用于数据量较小的情况。然而,当数据量较大时,为了优化性能,推荐采用真分页技术,即在数据库层面...

    模拟百度的JSP分页源代码

    在这个模拟百度的JSP分页项目中,开发者可能还使用了一些最佳实践,比如缓存分页信息,避免频繁的数据库查询;或者使用Ajax实现无刷新分页,提高用户体验。同时,项目可能也涉及到了URL参数设计、错误处理、安全性等...

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

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

    JSP+MySql分页组件

    【JSP+MySQL分页组件】是Web开发中常见的功能,用于处理大量数据时提高页面加载速度和用户体验。在Web应用程序中,一次性加载所有数据可能导致页面响应慢,尤其是在数据库存储的数据量庞大的情况下。分页技术可以...

    jsp+servlet分页

    总结,"jsp+servlet分页"涉及了JSP和Servlet的基础知识,包括JSP的EL和JSTL,Servlet的请求处理,以及数据库查询和数据展示。同时,实际开发中还需要了解如何使用数据库查询语句(如SQL的LIMIT和OFFSET)实现分页,...

Global site tag (gtag.js) - Google Analytics