求个java分页最优算法,不用代码,给我个思路就行,不要那种百度一搜就出来的那个

下面这个我已经知道了所以不要这样的。。。谢谢O(∩_∩)O~
PS:请问一般web开发用什么代码实现分页?JS?javabean?还是其他的?
--------------------------------------------
定义两个Vector,一个为储存查询所有记录的totalV,另一个储存当前页的记录currentPageV;
  总的记录数:int totalSize = totalV.getSize();
  每页显示的记录数:int countPerPage;
  总页数:int totalPageNum = totalSize/countPerPage;
  //如果总的记录数和每页记录数的余数大于零,
  //那么总的页数为他们的整除结果加一
  if (totalSize%countPerPage > 0 ){
  totalPageNum = totalSize/countPerPage + 1;
  }
  当前的页数:pageNum;
  for (int j = 0;j<totalV.size();j++){
  //分页,根据当前的页数和每页显示的记录数从totalV中取出记录
  //往currentPageV中添加记录;
  //如果当前记录在(当前页码-1)*每页显示记录数(包括等于)
  //和 当前页码*每页显示记录数(不包括等于)之间的时候;
  //就属于该页的数据
  if ( (j >= (pageNum - 1) * countPerPage) && (j < pageNum * countPerPage)) {
  currentPageV.addElement(totalV.get(j));
  }
  //当currentPageV记录数等于每页显示记录数,
  //停止往currentPageV中添加记录
  if (currentPageV.size() == countPerPage) {
  break;
  }
  }
  那么,当前页中显示的记录,就是currentPageV中的记录。
————————————————————————————

第1个回答  2013-08-26
如果数据来自数据库,

在数据库中查询的SQL中实现分页,才能更有意义一些。

每次全取出来,在内存中分页不是个好办法。

至于数据库分页,就比较简单了,要看你采用了哪种技术来访问数据库的。

第2个回答  2013-08-26
分页不是你这样整的,这样分页的意义就不存在了.
只所以分页不仅仅是因为在一个页面显示那么多内容不太好,更因为对于数据库大数据量的查询.所以没有什么储存查询所有记录的totalV.
根据当前页数和每页的记录数去确定下一页或上一页的记录从m到n.Mysql数据库查询用limit(m,n),Oracle的话用子查询.
而开发中一般都是写个分页组件的,将所有的一切封装到一个标签中,对外只提供请求的几个参数.本回答被提问者和网友采纳
第3个回答  2013-08-26
一般用sql分页吧,在内存分页万一数据量大就坑爹了

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网