`
Tank03
  • 浏览: 81068 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

分页原理

阅读更多

      相信大家对分页已经很熟了,就不累赘有哪些方法了.但是大家知道intPageCount = (intRowCount+intPageSize-1)/intPageSize 这个算法,但是它的原理你知道么?当然你是老鸟,呵呵~~不要丢砖,飞过就OK啦~.

     

其实
    intPageCount = (intRowCount+intPageSize-1) / intPageSize;
你可以把它分开看成:
    intPageCount=(intRowCount-1/intPageSiez)+1;
也就是说:
    我们假设introwCount = 8;//(总的记录),intPageSize = 8;//每页记录.
      所以总共就为1页,如果rowCount = 14,inPageSize=8则为2页,就是说总页数至少是要比8的倍数多1才会多翻一页.如果一页显示八个记录,而总数刚好最后页有8个记录,你会翻页吗,不会的吧!!就这个道理
如果你觉得还是不理解,你就用下面这个:
    intPageCount=intRowCount%intPageSize==0?(intRowCount)/intPageSize:(intRowCount/intPageSize+1);
      简单的解释:如果rowCount = 8;//总记录数 
      intPageSize = 8;//每页记录数,那么总页数就是因为8%8==0则8/8=1
就是一页
如果rowCount=14 intPageSize=8则总页数就是因为14%8!=0则14/8+1=2


 

      

分享到:
评论
16 楼 Tank03 2011-04-19  
<div class="quote_title">kaneg 写道</div>
<div class="quote_div">
<div class="quote_title">楼主的解释是很清楚的,但楼主知道如何用数学方法推导或证明<span style="white-space: pre; font-weight: normal;">intPageCount = (intRowCount+intPageSize-1) / intPageSize;这个公式吗?</span> </div>
<div class="quote_title">因为这个里面涉及到整除和求余的操作,所以我觉得不是用小学数学就能解决的那么简单。</div>
<div class="quote_title">Tank03 写道</div>
<div class="quote_div">
<p>      相信大家对分页已经很熟了,就不累赘有哪些方法了.但是大家知道intPageCount = (intRowCount+intPageSize-1)/intPageSize 这个算法,但是它的原理你知道么?当然你是老鸟,呵呵~~不要丢砖,飞过就OK啦~.<img src="/images/smiles/icon_biggrin.gif" alt=""></p>
<p> </p>
<pre name="code" class="java">其实
    intPageCount = (intRowCount+intPageSize-1) / intPageSize;
你可以把它分开看成:
    intPageCount=(intRowCount-1/intPageSiez)+1;
也就是说:
    我们假设introwCount = 8;//(总的记录),intPageSize = 8;//每页记录.
      所以总共就为1页,如果rowCount = 14,inPageSize=8则为2页,就是说总页数至少是要比8的倍数多1才会多翻一页.如果一页显示八个记录,而总数刚好最后页有8个记录,你会翻页吗,不会的吧!!就这个道理
如果你觉得还是不理解,你就用下面这个:
    intPageCount=intRowCount%intPageSize==0?(intRowCount)/intPageSize:(intRowCount/intPageSize+1);
      简单的解释:如果rowCount = 8;//总记录数
      intPageSize = 8;//每页记录数,那么总页数就是因为8%8==0则8/8=1
就是一页
如果rowCount=14 intPageSize=8则总页数就是因为14%8!=0则14/8+1=2


</pre>
<p> </p>
<p> </p>
</div>
<p> </p>
</div>
<p><span class="Apple-style-span" style=""><span class="Apple-style-span" style=""><br><span style="font-size: small;">假设:intRowCount = p*intPageSize+q(q为余数,p为整数)<br>因为q为余数,所以0&lt;=q&lt;intPageSize<br>代入到(intRowCount + intPageSize - 1) / intPageSize,则得到<br>intPageCount = (p*intPageSize+q+intPageSize - 1) / intPageSize=p+1+(q-1)/intPageSize<br>当intPageSize能整除intPageSize时,q=0,p+1+(q-1)/intPageSize取整的结果为p<br>当不能整除的时候,1&lt;=q&lt;intPageSize=&gt;0&lt;=q-1&lt;intPageSize-1<br>所以:0&lt;=(q-1)/intPageSize&lt;1<br>取整的结果为p+1<br>综上所述,整除时intPageCount = p<br>不能整除是为p+1<br></span></span></span></p>
15 楼 Tank03 2011-04-19  
没有其他意思。但是真的有人问我。而不只是几个!所以我就直接丢出来。呵呵。。不过已近做好新手贴的准备了。如果能帮到一个人。新手贴也无所谓。
14 楼 huqing2010 2011-04-19  
这与原理有啥关系?
13 楼 Technoboy 2011-04-19  
su1216 写道
小学在学除法的时候,就有带余除法,余数=0即是整除
整除在分解质因数之前

不出意外,应该是小学3、4年纪的课程

12 楼 gwpking8419 2011-04-19  
我去。。。。
11 楼 juedui0769 2011-04-18  
wkcgy 写道
我觉得第二个intPageCount=intRowCount%intPageSize==0?(intRowCount)/intPageSize:(intRowCount/intPageSize+1);更好理解!!


我也是用的这个。好理解。不
10 楼 antjava 2011-04-18  
写一个通用的分页吧。 基于后台的通用分页sql,可以利用反射自动装载数据到对象中。
前台显示做一个封装。

或者用组件去实现,如dhemlxgrid。
这个原理应该不会没人不明白吧。
9 楼 su1216 2011-04-18  
小学在学除法的时候,就有带余除法,余数=0即是整除
整除在分解质因数之前

不出意外,应该是小学3、4年纪的课程
8 楼 wkcgy 2011-04-18  
我觉得第二个intPageCount=intRowCount%intPageSize==0?(intRowCount)/intPageSize:(intRowCount/intPageSize+1);更好理解!!
7 楼 ak121077313 2011-04-18  
分页能有什么原理???
6 楼 wj539h 2011-04-18  
无语的要喷了
5 楼 kanny87929 2011-04-18  
...无语,真的是无语
4 楼 kaneg 2011-04-18  
<div class="quote_title">楼主的解释是很清楚的,但楼主知道如何用数学方法推导或证明<span style="white-space: pre; font-weight: normal;">intPageCount = (intRowCount+intPageSize-1) / intPageSize;这个公式吗?</span>
</div>
<div class="quote_title">因为这个里面涉及到整除和求余的操作,所以我觉得不是用小学数学就能解决的那么简单。</div>
<div class="quote_title">Tank03 写道</div>
<div class="quote_div">
<p>      相信大家对分页已经很熟了,就不累赘有哪些方法了.但是大家知道intPageCount = (intRowCount+intPageSize-1)/intPageSize 这个算法,但是它的原理你知道么?当然你是老鸟,呵呵~~不要丢砖,飞过就OK啦~.<img src="/images/smiles/icon_biggrin.gif" alt=""></p>
<p> </p>
<pre name="code" class="java">其实
    intPageCount = (intRowCount+intPageSize-1) / intPageSize;
你可以把它分开看成:
    intPageCount=(intRowCount-1/intPageSiez)+1;
也就是说:
    我们假设introwCount = 8;//(总的记录),intPageSize = 8;//每页记录.
      所以总共就为1页,如果rowCount = 14,inPageSize=8则为2页,就是说总页数至少是要比8的倍数多1才会多翻一页.如果一页显示八个记录,而总数刚好最后页有8个记录,你会翻页吗,不会的吧!!就这个道理
如果你觉得还是不理解,你就用下面这个:
    intPageCount=intRowCount%intPageSize==0?(intRowCount)/intPageSize:(intRowCount/intPageSize+1);
      简单的解释:如果rowCount = 8;//总记录数
      intPageSize = 8;//每页记录数,那么总页数就是因为8%8==0则8/8=1
就是一页
如果rowCount=14 intPageSize=8则总页数就是因为14%8!=0则14/8+1=2


</pre>
<p> </p>
<p> </p>
</div>
<p> </p>
3 楼 gtssgtss 2011-04-16  
小学数学。。。
2 楼 Tank03 2011-04-16  
hehe~~别去.有人是不熟的.
1 楼 lifeforever 2011-04-16  
我了个去~

相关推荐

    java分页原理详解

    Java 分页原理详解 Java 中的分页技术是指在查询大量数据时,为了提高性能和用户体验,将数据分成多页展示的技术。这种技术广泛应用于各种 Java 项目中,例如 Web 应用程序、移动应用程序等。 在 Java 中,常用的...

    PHP 分页原理 (有注释)

    ### PHP 分页原理详解 #### 一、分页的基本概念 在Web开发中,当数据量较大时,一次性展示所有数据不仅会导致页面加载速度变慢,还会影响用户体验。因此,通常采用分页技术来实现数据的分批显示,即每次只显示一...

    JavaWeb 数据库 分页 原理 解析 下载

    JavaWeb 数据库 分页 原理 解析 下载 简单易懂 将下载后的压缩文件解压后可以得到page_csdn文件夹,用eclipse导入即可,运行之前请运行page.sql数据库脚本,我使用的是MySQL数据库。 部署到Tomcat服务器后,在...

    PHP简单分页原理

    一、分页原理 1. 数据获取:首先,我们需要从数据库中获取数据。这通常通过SQL查询完成,例如,如果我们有一个名为`users`的表,我们可能使用`SELECT * FROM users`来获取所有用户。然而,为了分页,我们需要限制...

    php 的简单分页原理

    以下是对分页原理的详细解释。 首先,我们从MySQL的角度理解分页。在MySQL中,可以使用`SELECT`语句配合`LIMIT`关键字来实现分页。例如,如果有一个名为`table`的表,要获取前10条记录,我们可以使用如下SQL查询: ...

    MyBatis 最简单的分页+原理解析

    二、分页原理 1. **动态SQL生成**:MyBatis会根据传入的参数动态生成SQL语句。例如,如果用户名为空,则不会包含`AND username LIKE #{username}`这一部分。这样可以避免无效的查询条件。 2. **分页参数**:`LIMIT...

    JSP/Servlet 数据库分页 原理 解析 下载

    JSP/Servlet数据库分页原理解析源码下载,注释详尽、简单易懂 将下载后的压缩文件解压后可以得到page_csdn文件夹,用eclipse导入即可,运行之前请运行page.sql数据库脚本,我使用的是MySQL数据库。 部署到Tomcat...

    DoNet学习-分页原理视频教程

    资源名称:DoNet学习-分页原理视频教程资源目录:【】0309941f099ceafc2f9822453ceb5651【】4f3c978414027ea7fbfc5f355c79f9d1【】分页原理_上午1复习aspnet生命周期和管道【】分页原理_上午2session原理【】分页...

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

    **PHP+MySQL分页原理与实现** 在网页开发中,当数据量较大时,一次性将所有数据加载到页面上不仅会影响用户体验,也会增加服务器负担。因此,分页显示成为了一个必要的解决方案。本篇将深入讲解PHP与MySQL结合实现...

    Mybatis之RowBounds分页原理详解

    Mybatis之RowBounds分页原理详解 Mybatis作为一个流行的持久层框架,提供了一种灵活的方式来进行数据库操作。其中,RowBounds是Mybatis中的一种分页机制,允许开发者通过传递RowBounds对象来进行数据库数据的分页...

    PHP100视频教程 13:PHP+MYSQL分页原理

    1、SQL语句中的limit用法SELECT * FROM table …… limit 开始位置 , 操作条数2、学习分页的一种公式(1)分页原理所谓分页显示,也就是讲数据库中的结果集,一段一段显示出来(2)需要的条件怎么分段,当前在第几...

    JavaWeb 数据库 分页 原理 解析 下载 简单易懂

    JavaWeb 数据库 分页 原理 解析 下载 简单易懂 将下载后的压缩文件解压后可以得到page_csdn文件夹,用eclipse导入即可,运行之前请运行page.sql数据库脚本,我使用的是MySQL数据库。

    php+mysql分页原理(加个关注就行).rar

    总结来说,PHP+MySQL的分页原理主要是通过SQL查询的适当限制和用户输入的处理,实现数据的分批次展示,从而提高网页性能和用户体验。这个项目提供的"分页"文件可能包含了具体的代码示例,学习者可以通过阅读和实践...

    JSP/Servlet 数据库 分页 原理 解析 下载

    数据库分页原理解析源码下载,注释清楚、简单易懂 将下载后的压缩文件解压后可以得到page_csdn文件夹,用eclipse导入即可,运行之前请运行page.sql数据库脚本,我使用的是MySQL数据库。 部署到Tomcat服务器后,...

    php 分页原理

    省略分页 比较简单易懂 教学临时些的 希望可以帮到更多人

    php新手入门认识分页原理

    php新手入门认识分页原理,分页显示是一种非常常见的浏览和显示大量数据的方法,属于web编程中最常处理的事件之一。

    计算机前端-核心编程day2-09分页原理.avi

    计算机前端-核心编程day2-09分页原理.avi

    php分页原理

    **PHP分页原理详解** 在Web开发中,数据量大的时候,一次性加载所有记录会导致页面加载速度慢,用户体验下降。此时,分页技术显得尤为重要。本文将深入探讨PHP分页的原理,帮助开发者掌握这一核心技能。 ### 一、...

    php分页原理 万能分页源代码

    本文将深入探讨PHP分页的原理,并提供一个万能分页的源代码示例。 首先,我们需要理解分页的基本概念。分页就是将一个大列表的数据分成多个小部分,每次只加载一部分到页面上,用户可以通过页码进行翻页查看剩余...

Global site tag (gtag.js) - Google Analytics