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

mysql中的一个分页实例

阅读更多
  <%
/*每页显示的条数(可以自己随便定义)*/
int pageSize = 3;

/*起始页(可以自己随便定义)*/
int startRow = 0;

/*如果判断的值是对的,那么将当前页的起始页一定不是0,那么我们就将起始页的指针指向这个起始页*/
if (request.getParameter("startRow") != null){
try{

startRow = Integer.parseInt(request.getParameter("startRow"));
}catch(Exception e){
/*如果在转化的过程中出现了异常,那么我就将这个起始页还之前startRow=0的首页*/
startRow = 0;
}    
}

   %>



***********************翻页:首页,上一页,下一页,末页**********************

<%--查询数据库中有多少条跟查询条件相符的信息 --%>
<sql:query var="selectCount" dataSource="${connectDBSource}">
    我们要查询的sql,这个sql要和下面的要显示是的sql是一致的
</sql:query>

<%-- 翻页(除了用到了查询的selectCount根据你定义的更改外,其它的代码可以直接使用) --%>
<script type="text/javascript">

function turnPage(pageNum){
alert("翻页翻页啦翻页啦");
<%--设置首页 --%>
if (pageNum*1 == 0){
alert("首页");
window.location = "searchRKInfo.jsp?startRow="+pageNum+"&f="+new Date().getTime();
}

/*上一页*/
if(pageNum=="previous"){
if(<%=startRow%>==0){
alert("已经是第一页了");
return false;
}
pageNum = <%=startRow%>-<%=pageSize%>;
window.location = "searchRKInfo.jsp?startRow=" + pageNum + "&f=" + new Date().getTime();
}

/*下一页*/
if(pageNum=="next"){

/*处理下一页的问题(当数据库中有偶数条记录时)*/
if(${selectCount.rowCount}%<%=pageSize%>==0){
pageNum = (<%=startRow%> + <%=pageSize%>)==${selectCount.rowCount}?<%=startRow%>:(<%=startRow%> + <%=pageSize%>);
}

/*处理下一页的问题(当数据库中有奇数条记录时)*/
if(${selectCount.rowCount}%<%=pageSize%>!=0){
pageNum = (<%=startRow%> + <%=pageSize%>)>${selectCount.rowCount}?<%=startRow%>:(<%=startRow%> + <%=pageSize%>);
}

if(pageNum==<%=startRow%>){
alert("已经是最后一页了");
return false;
}
window.location = "searchRKInfo.jsp?startRow=" + pageNum + "&f=" + new Date().getTime();
}

/*末页*/
if(pageNum=="end"){
alert("末页");
var endNum = ${selectCount.rowCount}%<%=pageSize%>;
if(endNum==0){
pageNum = ${selectCount.rowCount}-<%=pageSize%>;
}
if(endNum!=0){
pageNum = ${selectCount.rowCount}-(${selectCount.rowCount}%<%=pageSize%>);
}
window.location = "searchRKInfo.jsp?startRow=" + pageNum + "&f=" + new Date().getTime();
}

}
</script>




***************翻页:跳转到 页******************************

<%-- 除了用到了查询的selectCount根据你定义的更改外,其它的代码可以直接使用 --%>
<script type="text/javascript">

function isNull(str){
var reg = /^\s*$/;
if(str=="" || reg.test(str)){
return true;
}
if(str==null || str=="null" || str=="undefined"){
return true;
}
return false;
}

/*跳到第几页*/
function jumpToPage(jumpToPage){

var pageNum;

/*upButton 当不添值时,点击跳转给以提示*/
if(isNull(document.getElementById("pageUp").value) && jumpToPage=="upButton"){
alert("跳转值不能为空");
return false;
}

/*downButton 当不添值时,点击跳转给以提示*/
if(isNull(document.getElementById("pageDown").value) && jumpToPage=="downButton"){
alert("跳转值不能为空");
return false;
}

/*当upButton填写正确,执行跳转操作*/
if(!isNull(document.getElementById("pageUp").value) && jumpToPage=="upButton"){
pageNum = document.getElementById("pageUp").value;
}

/*当downButton填写正确,执行跳转操作*/
if(!isNull(document.getElementById("pageDown").value) && jumpToPage=="downButton"){
pageNum = document.getElementById("pageDown").value;
}

if(pageNum<=0){
alert("您输入的页数小于指定的页数");
return false;
}

/*参数值大于指定的页数(当数据库总行数为偶数时)*/
if(${selectCount.rowCount}%<%=pageSize%>==0){
if(pageNum>(${selectCount.rowCount}/<%=pageSize%>)){
alert("您输入的参数大于指定的页数");
return false;
}
}

/*参数值大于指定的页数(当数据库总行数为奇数时)*/
if((${selectCount.rowCount}%<%=pageSize%>!=0)){
if(pageNum>parseInt(${selectCount.rowCount}/<%=pageSize%>)+1){
alert("您输入的参数大于指定的页数");
return false;
}
}

/*参数不是数字*/
if(!(/^\d+(\.\d+)?$/).test(pageNum)){
alert("请输入正确的跳转页(参数应为数字类型)");
}else {
window.location = "searchRKInfo.jsp?startRow=" + (pageNum*<%=pageSize%>-3) + "&f=" + new Date().getTime();
}
}
</script>

在我们要使用的分页的显示页面searchRKInfo.jsp中,我们要这样写(注意startRow,maxRows的使用,这样得出来的查询页面才是被分过页的)

<sql:query var="selectRKInfo" dataSource="${connectDBSource}" startRow="<%=startRow %>" maxRows="<%=pageSize %>">
    <%=要查询的sql %>
</sql:query>

******************以上的方法被下面的程序调用***************************

<span onClick="turnPage(0)" style="cursor:pointer"  class="title2">首页</span>  
  <span onClick="turnPage('previous')" style="cursor:pointer"  class="title2">上一页</span>  
  <span onClick="turnPage('next')" style="cursor:pointer"  class="title2">下一页</span>  
  <span onClick="turnPage('end')" style="cursor:pointer"  class="title2">末页</span>  
  <span class="title2">跳至第
<input type="text" name="pageUp" id="pageUp" style="width:2em; height:1.4em">页 <input type="button" value="跳转" onclick="return jumpToPage('upButton')"></span>








分享到:
评论

相关推荐

    SSH+Mysql无刷新分页实例

    在这个"SSH+Mysql无刷新分页实例"中,我们将探讨如何利用SSH框架与MySQL数据库实现网页的无刷新分页功能,从而提高用户体验。 首先,SSH框架中的Spring负责控制层,它提供依赖注入(Dependency Injection,DI)和...

    mysql分页实例

    在这个"mysql分页实例"中,我们将深入探讨MySQL的分页查询技术,并提供可以直接引用的分页类。 首先,我们要理解SQL中的基础分页查询语句。在MySQL中,最常用的分页查询方法是结合`LIMIT`和`OFFSET`关键字。`LIMIT`...

    PHP+mysql分页原理和实例应用.pdf

    接下来,我们将详细介绍PHP+MySQL分页的原理及实例应用。 首先,我们需要了解MySQL数据库中实现分页的核心SQL语句——LIMIT子句。在SQL语句中,LIMIT用于限制查询结果的数量,它接受一个或两个数字参数,表示从哪一...

    ssh分页完整实例数据库mysql

    总结起来,这个压缩包提供的SSH分页实例数据库MySQL连接,旨在帮助初学者掌握SSH框架在实际项目中的应用,尤其是如何利用SSH实现数据的CRUD操作和分页功能,对于提升Java Web开发技能具有很大价值。通过实践这个实例...

    mybatis mysql分页实例(不能用找我)

    本实例将详细介绍如何在MyBatis中实现MySQL的分页查询,帮助开发者提高应用性能,提升用户浏览数据的体验。 首先,我们要理解分页的基本概念。分页是将大量数据分成多个小部分,每次只加载一部分到内存中,这样可以...

    nodejs mysql 实现分页的方法

    Node.js结合MySQL实现分页查询是一种常见的数据处理方式,在Web应用中尤为常见...通过这篇文章的学习,我们可以了解到在Node.js应用中如何结合MySQL数据库来实现分页功能,这对于Web开发人员来说是一个非常实用的技能。

    MySQL_数据库实现的JAVA_分页实例

    在这个"MySQL_数据库实现的JAVA_分页实例"中,我们将探讨如何在Java后端实现对MySQL数据库的分页查询,这对于大数据量的展示和优化用户体验至关重要。 首先,理解分页的基本概念:分页是将大量数据分为多个小部分,...

    SpringMVC精品资源--Spring+SpringMVC+Mybatis+Maven+Mysql框架搭建与分页实例.zip

    在这个分页实例中,开发者将学习如何使用这些技术构建一个具备分页功能的Web应用。分页是大型数据集展示的关键,可以提高用户体验并减少服务器负载。SpringMVC和Mybatis的结合可以轻松实现动态分页查询,而Maven则...

    SSM 分页实例,MAVEN工程,清晰完整,包含mysql文件

    SSM 分页实例,MAVEN工程,清晰完整,包含mysql文件,有具体搭建MAVEN工程说明,实例简介。详见:https://blog.csdn.net/jerrytong/article/details/88203037

    JSP+MYSQL+Java类优化分页的实例

    本文将深入解析一个结合了JSP、MYSQL和Java类优化分页的实例,探讨其设计思路、实现原理以及代码细节。 #### 核心概念与技术 1. **JSP (JavaServer Pages)**:是一种基于Java技术的服务器端脚本语言,用于动态网页...

    Java 分页实例

    本文将通过一个具体的Java分页实例,讲解如何在三大框架(未指定具体框架,这里默认为Spring MVC、MyBatis和Struts等常见框架)中实现分页,并提供相关源码作为参考。 首先,我们来看MySQL与传统Servlet结合的分页...

    mysql 分页例子

    三、分页实例 假设我们有一个名为`students`的表,包含`id`(主键,自增),`name`和`age`字段,现在要查询第3页,每页显示10条记录,那么SQL语句如下: ```sql SELECT * FROM students ORDER BY id ASC LIMIT 20, ...

    mysql:一个分页php类库.zip

    例如,创建一个新的分页实例,设置查询条件和每页条数,然后调用类库的方法获取分页数据和相关信息,即可在前端展示分页列表。 以下是一个简单的示例,展示了如何使用此类库: ```php require_once 'path/to/...

    PHP中记录分页显示实例

    以上就是整个PHP实现分页显示的一个完整实例,通过这个例子我们可以了解到如何在PHP中实现数据分页显示的基本流程,包括数据库连接、数据查询、数据处理、数据输出以及分页导航栏的构建等多个方面。希望对正在学习...

    分页实例-demo

    在这个"分页实例-demo"中,我们将探讨分页的基本原理,以及如何在实际项目中实现它。 首先,`pageDemoSQL.sql`文件很可能包含了创建数据库表和填充示例数据的SQL语句。在大多数数据库系统中,如MySQL、PostgreSQL或...

    jsp+mySql 真假分页

    例如,一个简单的SQL查询可能如下: ```sql SELECT * FROM table_name LIMIT (pageNo - 1) * pageSize, pageSize; ``` 其中,`pageNo`是当前页码,`pageSize`是每页的记录数。 **二、假分页** 假分页(Virtual ...

    PHP 分页实例源码 MYSQL数据库文件.rar

    PHP 分页实例,演示从数据库创建到读取数据集,对数据集分页的整个过程。产生 1 2 3 的分页序号:  //数据库连接  @mysql_connect("localhost","root","111") or die("连接数据库失败:".mysql_error());  mysql_...

    多种脚本分页实例

    在数据库操作中,SQL提供了LIMIT和OFFSET关键字(在MySQL中)或TOP和Skip(在SQL Server中)来实现分页。正确地构造这些查询语句,可以有效地避免一次性加载大量数据,提高性能。 在实际应用中,为了提供更好的用户...

    PHP+MySQLi分页实例

    在这个例子中,我们首先建立了一个到MySQL数据库的连接,然后根据用户请求的页码计算偏移量,构造分页查询的SQL语句。接着,我们执行查询并显示结果。最后,创建一个分页导航,显示所有可用的页码。 请注意,实际...

    Mysql+分页-DEMO.rar

    总的来说,"Mysql+分页-DEMO.rar" 提供了一个在Delphi7环境下使用MySQL实现分页查询的实例,这对于学习如何在桌面应用程序中有效地管理大量数据是非常有价值的。通过这个DEMO,开发者可以了解和实践如何整合数据库...

Global site tag (gtag.js) - Google Analytics