请问谁有分页的例子? 自己处理:一个vector的起始标志,一个vector的结束标志,一个每页记录数,一个总记录数,一个页总数。现在,就可以实现分页了。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Vector里面难道能放总记录数吗?这样一来每次分页都要去数据库中读取整个记录,性能岂不太差了.不可取.理想的情况是vector里应该存放已经分过页的记录,可是数据库又如何实现呢?头疼啊! 关注。我的方法:假设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++;}%> to: pqds(有日片,有夜片) 过去的记录都在数据库中,请问如何搜速一下? to: zhaolihhy()从你的代码来看,实际上你每次分页,result里存放的都是全部记录,你只是用result.next()将指针移到当前分页上,如果数据库记录数少,访问的用户不多,这个方法是可行的.可是如果是百万条记录,并且同时多个用户访问的话,服务器可能立刻崩溃,有没有更好的解决方案? 现在的JDBC的RESULTSET对象好象有一个定位指针的方法absolute,用这个是不是比较好? to: jamy_blue(jamy)问题的关键不是RESULTSET的指针,而是RESULTSET不能存放全部记录. 关于静态变量的问题 paintComponent()会自动调用? 怎么样在能学好JSP?请高手指教 初学者java应该用什么编译软件开发/??? 关于网络编程的问题 我刚装了JDK1.5 但是环境配置好象出了问题,谁能帮我解决下 在公司编java程序用什么工具 最简单,又最难解决的问题--快来帮帮我 Jbuilder4相关注册码(先答后问) 获取打印机打印状态 麻烦大家进来看看 请问,在JAVA中如何得到当前CLASS的当前路径?
假设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++;
}
%>
过去的记录都在数据库中,请问如何搜速一下?
从你的代码来看,实际上你每次分页,result里存放的都是全部记录,你只是用result.next()将指针移到当前分页上,如果数据库记录数少,访问的用户不多,这个方法是可行的.可是如果是百万条记录,并且同时多个用户访问的话,服务器可能立刻崩溃,有没有更好的解决方案?
问题的关键不是RESULTSET的指针,而是RESULTSET不能存放全部记录.