自己处理:一个vector的起始标志,一个vector的结束标志,一个每页记录数,一个总记录数,一个页总数。
现在,就可以实现分页了。

解决方案 »

  1.   

    Vector里面难道能放总记录数吗?这样一来每次分页都要去数据库中读取整个记录,性能岂不太差了.不可取.理想的情况是vector里应该存放已经分过页的记录,可是数据库又如何实现呢?头疼啊!
      

  2.   

    关注。我的方法:
    假设sql语句已经形成:
    ResultSet result = listdb.executeQuery(ConSQL);
    result.next();
    intRowCount = result.getInt(1);
    result.close();
    intPageCount = (intRowCount+intPageSize-1) / intPageSize;
    if(intPage>intPageCount) intPage = intPageCount;
    result = listdb.executeQuery(strSQL);
    i = (intPage-1) * intPageSize;
    for(j=0;j<i;j++) result.next();这里是一些html代码
    这里是历遍数据显示一行。然后返回到for语句。 <%
    i = 0;
    while(i<intPageSize && result.next()){
    %>
        <tr> 
        <td   height="22" <%if((i%2)!=0) { %>background="images/bodyleft1_1.gif"<%}%> > 
          <%=result.getString("filename") %></td>
        <td   height="22" <%if((i%2)!=0) { %>background="images/bodyleft1_1.gif"<%}%>>
    <div align="center"><%String filetype=result.getString("filetype");
    if((filetype==null) | (("").equals(filetype))){
                 filetype="Unknow";}
     %><%=filetype%></a></div></td>
        <td   height="22" <%if((i%2)!=0) { %>background="images/bodyleft1_1.gif"<%}%>>
    <div align="center"><%=result.getInt("filespace") %></font></div></td>
        <td   height="22" <%if((i%2)!=0) { %>background="images/bodyleft1_1.gif"<%}%>>
    <div align="center"><%=result.getInt("keystage") %></font></div></td>
        <td   height="22" <%if((i%2)!=0) { %>background="images/bodyleft1_1.gif"<%}%>>
    <div align="center"><%=result.getString("language") %></font></div></td>
        <td   height="22" <%if((i%2)!=0) { %>background="images/bodyleft1_1.gif"<%}%>>
    <div align="center"><a href="index.jsp?job=8&filename=<%=result.getString("filename") %>">view</a></font></div></td>  </tr>
      <%
    i++;
    }
    %>
      

  3.   

    to: pqds(有日片,有夜片) 
    过去的记录都在数据库中,请问如何搜速一下?
      

  4.   

    to: zhaolihhy()
    从你的代码来看,实际上你每次分页,result里存放的都是全部记录,你只是用result.next()将指针移到当前分页上,如果数据库记录数少,访问的用户不多,这个方法是可行的.可是如果是百万条记录,并且同时多个用户访问的话,服务器可能立刻崩溃,有没有更好的解决方案?
      

  5.   

    现在的JDBC的RESULTSET对象好象有一个定位指针的方法absolute,用这个是不是比较好?
      

  6.   

    to: jamy_blue(jamy)
    问题的关键不是RESULTSET的指针,而是RESULTSET不能存放全部记录.