社区
Web 开发
帖子详情
分页问题
chenyongchina
2004-11-22 09:16:30
各位朋友:
前一段时间我用的是vector()先储存所有的查询内容,然后在分页,效率比较低,朋友能不能给我提供一些高效的分页的程序,源代码更好哦,谢谢了!
...全文
165
6
打赏
收藏
分页问题
各位朋友: 前一段时间我用的是vector()先储存所有的查询内容,然后在分页,效率比较低,朋友能不能给我提供一些高效的分页的程序,源代码更好哦,谢谢了!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
peterbarry
2004-11-22
打赏
举报
回复
顶楼上的
剑事
2004-11-22
打赏
举报
回复
package com;
import conn.DBConnManager;
import java.sql.*;
import java.util.*;
public class ResultGatherPro
{
private String sql;
private int intPageSize; //每页行数
private int intRowCount;
private int intPageCount;
private int intPage; //页号
private String Counter;
public ResultGatherPro()
{
}
public ResultGatherPro(String sqlcom,int rownum,int pagenum,String counter)
{
sql=sqlcom;
intPageSize = rownum;
intPage = pagenum;
Counter = counter;
}
public List selectRS(String sqlcom,int rownum,int pagenum,String counter)
{
this.sql = sqlcom;
this.intPageSize = rownum;
this.intPage = pagenum;
this.Counter = counter;
return selectRS();
}
public List selectRS()
{
List rsall = new ArrayList();
Map rsTree;
try{
DBConnManager conn = new DBConnManager();
Connection con = conn.getConnection("mssql");
Statement st = con.createStatement();
ResultSet rsc=st.executeQuery(Counter);
while(rsc.next())
{
intRowCount=rsc.getInt("allrow");
}
rsc.close();
st.close();
CallableStatement stmt = con.prepareCall("{call p_show(\""+sql+"\","+intPageSize+","+intPage+")}");
ResultSet rs = stmt.executeQuery();
ResultSetMetaData rsmd = rs.getMetaData();
int numberOfColumns = rsmd.getColumnCount();
Object[] aa = new Object[numberOfColumns-1];
intPageCount = (intRowCount+intPageSize-1)/intPageSize;
while(rs.next())
{
rsTree = new HashMap(numberOfColumns);
for(int r=1;r<numberOfColumns+1;r++)
{
rsTree.put(rsmd.getColumnName(r),rs.getObject(r));
}
rsall.add(rsTree);
}
rs.close();
stmt.close();
conn.releaseConnection("mssql",con);
}catch(java.lang.Exception ex){
ex.printStackTrace();
}
return rsall;
}
public String ChangePage(String pagename,String url)
{
String urlchange=null;
if(intPage>1 && intPage<intPageCount)
{
urlchange="<a href="+pagename+"?pagenum="+(intPage-1)+url+">上一页</a><a href="+pagename+"?pagenum="+(intPage+1)+url+"> 下一页</a> 第"+intPage+"页 共"+intPageCount+"页 共"+intRowCount+"条";
}else if(intPage==1 && intRowCount<=intPageSize){
urlchange="上一页 下一页 第"+intPage+"页 共"+intPageCount+"页 共"+intRowCount+"条";
}else if(intPage==intPageCount && intPage!=1){
urlchange="<a href="+pagename+"?pagenum="+(intPage-1)+url+">上一页</a> 下一页 第"+intPage+"页 共"+intPageCount+"页 共"+intRowCount+"条";
}else if(intPage==1 && intRowCount>=intPageSize){
urlchange="上一页 <a href="+pagename+"?pagenum="+(intPage+1)+url+"> 下一页</a> 第"+intPage+"页 共"+intPageCount+"页 共"+intRowCount+"条";
}else{
urlchange = "<a href="+pagename+">第一页</a>";
}
return urlchange;
}
public String gotoPage(String url)
{
String javascript = "<script>function checksearch()\n{if(find.pagenum.value==\"\" || find.pagenum.value==\"0\"){alert('请输正确入页数!');find.pagenum.focus();return false;}\nif(isNaN(find.pagenum.value)){alert('请输入数字!');find.pagenum.focus();return false;}}</script>";
String form = "<table border='0' cellpadding='0' cellspacing='0'>\n"+javascript;
form += "<form name='find' action='' onSubmit='return checksearch()'>\n<tr><td width='40' align='center'>\n<input name='pagenum' type='text' size='2'>\n";
if(url!=null)
{
if(url.indexOf("&")>0)
{
String[] param = new String[(url.split("&")).length];
param = url.split("&");
for(int i = 0;i<param.length;i++)
{
form += "<input type='hidden' name='"+param[i].substring(0,param[i].indexOf("="))+"' value='"+param[i].substring(param[i].indexOf("=")+1)+"'>\n";
}
}else{
if(url.indexOf("=")>0)
{
form += "<input type='hidden' name='"+url.substring(0,url.indexOf("="))+"' value='"+url.substring(url.indexOf("=")+1)+"'>\n";
}
}
}
form += "</td><td width='25' align='center'><input type='submit' name='Submit' value='GO'>\n</td>\n</tr>\n</form>\n</table>";
return form;
}
自己写的
我用list
zhz586
2004-11-22
打赏
举报
回复
你搜索一下“分页”吧,有很多了!
yulchina
2004-11-22
打赏
举报
回复
最近也在寻找这方面的文章。关注中。。。
stone18
2004-11-22
打赏
举报
回复
里面有分页程序
stone18
2004-11-22
打赏
举报
回复
<%@ page contentType="text/html;charset=GBK" %>
<%
PartAttachInfo newPartAttachInfo=new PartAttachInfo();
PartAttachInfoDB newPartAttachInfoDB=new PartAttachInfoDB();
PartAttachInfoApp newPartAttachInfoApp=new PartAttachInfoApp();
Part newPart =new Part();
PartDB newPartDB =new PartDB();
PartApp newPartApp =new PartApp();
int departid=sysop.getDepartid();
Department newDepartment=new Department(dbi,departid);
String departcode=newDepartment.getCode();
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>广州本田零件追溯系统</title>
<style type="text/css">
<!--
body {
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}
-->
</style>
<link href="inc/style.css" rel="stylesheet" type="text/css">
</head>
<script language="javascript"><!--
if (window == top)top.location.href = "partno.jsp"; //frames.htm为框架网页
// --></script>
<script>
//var top=this;
//if (parent) top=parent;
//var tempstr="你";
// top.returnValue=tempstr;
// window.dialogArguments.document.all.ptm.partno.value="ll";
//top.close();
var ret = new Object();
function change(ptmname,obj)
{
var form=eval(obj);
//var ptna=eval(ptmname)
ptmname=form.value;
ret.partcoler=form.value;
//ptmname=form.value;
//alert(ret.ptmname+"--"+form+"---"+form.value);
}
function checkPartno(ptmid){
ret.partno=eval("document.form1.partno"+ptmid).value;
ret.partno=eval("document.form1.partno"+ptmid).value;
ret.partcoler=eval("document.form1.partcoler"+ptmid).value;
ret.suppliercode=eval("document.form1.suppliercode"+ptmid).value;
ret.number=eval("document.form1.number"+ptmid).value;
ret.packagesnum=eval("document.form1.packagesnum"+ptmid).value;
ret.modeltype=eval("document.form1.modeltype"+ptmid).value;
ret.coef=eval("document.form1.coef"+ptmid).value;
ret.lineno=eval("document.form1.lineno"+ptmid).value;
ret.supplyaddress=eval("document.form1.supplyaddress"+ptmid).value;
ret.hns=eval("document.form1.hns"+ptmid).value;
ret.partname=eval("document.form1.partname"+ptmid).value;
//ret.registerdate="<%= DateUtil.DateToString(new Date(),"yyyy-MM-dd") %>";
ret.crdate="<%= DateUtil.DateToString(new Date(),"yyyy-MM-dd") %>";
ret.plandate="";//<%= DateUtil.DateToString(new Date(),"yyyy-MM-dd") %>
ret.check=1;
window.returnValue = ret;
window.close();
}
function submit_form(pageid)
{
document.form1.pageid.value=pageid;
document.form1.submit();
}
</script>
<body>
<form action="partno_return.jsp" method="post" name="form1">
<input name="pageid" type="hidden" value="">
<table width="100%" border="1" cellpadding="0" cellspacing="0" bordercolor="#E1E1E1"> <tr>
<%
String partno="";
String suppliercode="";
String sql="";
int pageid=0;
int pagesize=60;
int cntall=0;
int totalpage=0;
int size=0;
ArrayList allPartno=new ArrayList();
if(request.getParameter("partno")!=null)
partno=request.getParameter("partno");
if(request.getParameter("pageid")!=null)
pageid=Integer.parseInt(request.getParameter("pageid"));
if(request.getParameter("suppliercode")!=null)
suppliercode=request.getParameter("suppliercode");
cntall=newPartAttachInfoApp.getPartCodeNum(dbi, suppliercode, partno);
if(cntall%pagesize>0)
totalpage=cntall/pagesize+1;
else
totalpage=cntall/pagesize;
if(pageid<=1)
pageid=1;
if(pageid>=totalpage)
pageid=totalpage;
allPartno=newPartAttachInfoApp.getPartCode( dbi, pageid, pagesize, suppliercode, partno);
size=allPartno.size();
for(int i=0; i<size;i++){
newPartAttachInfo=(PartAttachInfo)allPartno.get(i);
String partNo="";
String partcoler="";
String supplierCode="";
int number=0;
int packagesnum=0;
String modeltype="";
int coef=0;
String lineno="";
String supplyaddress="";
String hns="";
String partname="";
partNo=newPartAttachInfo.getPartNo();
partcoler =newPartAttachInfo.getPartColor();
supplierCode=newPartAttachInfo.getSupplyCode();
number=newPartAttachInfo.getPackNum();
packagesnum=newPartAttachInfo.getPackagesNum();
modeltype=newPartAttachInfo.getModelType();
coef=newPartAttachInfo.getCoef();
lineno=newPartAttachInfo.getLineNo();
supplyaddress=newPartAttachInfo.getSupplyAddr();
hns=newPartAttachInfo.getHNS();
newPart = newPartDB.getPart(dbi, partNo);
if(newPart!=null)
partname=newPart.getName();
if(i%3==0){
out.println("</tr>");
out.println("<tr>");
}
%>
<td height="19"><input name="check" type="radio" onClick="checkPartno(<%=i%>)" value="<%=i%>"><%=partNo%>:<font color="#0000FF"><%=partname%></font><font color="#FF0000"><%=partcoler%></font>
<input name="partno<%=i%>" type="hidden" id="partno" value="<%=partNo%>">
<input name="partcoler<%=i%>" type="hidden" id="partcoler" value="<%=partcoler%>">
<input name="suppliercode<%=i%>" type="hidden" id="suppliercode" value="<%=supplierCode%>">
<input name="number<%=i%>" type="hidden" id="number" value="<%=number%>">
<input name="packagesnum<%=i%>" type="hidden" id="packagesnum" value="<%=packagesnum%>">
<input name="modeltype<%=i%>" type="hidden" id="modeltype" value="<%=modeltype%>">
<input name="coef<%=i%>" type="hidden" id="coef" value="<%=coef%>">
<input name="lineno<%=i%>" type="hidden" id="lineno" value="<%=lineno%>">
<input name="supplyaddress<%=i%>" type="hidden" id="supplyaddress" value="<%=supplyaddress%>">
<input name="hns<%=i%>" type="hidden" id="hns" value="<%=hns%>">
<input name="partname<%=i%>" type="hidden" id="partname" value="<%=partname%>">
</td>
<%
}
if(size==1&&pageid<=1){
%>
<script language="JavaScript">
checkPartno("0");
</script>
<%
}else if(size==0){
%>
<script language="JavaScript">
ret.partno="";
ret.partcoler="";
<%if(departcode.trim().equals("company")){%>
ret.suppliercode="<%=suppliercode%>";
<%}else{%>
ret.suppliercode="";
<%}%>
ret.number="";
ret.packagesnum="";
ret.modeltype="";
ret.coef="";
ret.lineno="";
ret.supplyaddress="";
ret.hns="";
ret.registerdate="";
ret.crdate="";
ret.plandate="";
ret.partname="";
ret.check=0;
window.returnValue = ret;
window.close();
</script>
<%
}
%>
</tr>
</table>
<input name="suppliercode" type="hidden" value="<%=suppliercode%>">
<input name="partno" type="hidden" value="<%=partno%>">
<table width="100%" border="1" cellpadding="0" cellspacing="0" bordercolor="#F7F7F7">
<tr>
<td>共(<%=cntall%>)条 共(<%=totalpage%>)页 第(<%=pageid%>)页
<%if(pageid<=1){%>
首页 上一页
<%}else{%>
<a href="javascript:submit_form('1')" >首页</a> <a href="javascript:submit_form('<%=pageid-1%>')">
上一页 </a>
<%}if(pageid>=totalpage){%>
下一页 末页
<%}else{%>
<a href="javascript:submit_form('<%=pageid+1%>')"> 下一页</a> <a href="javascript:submit_form('<%=totalpage%>')">
末页 </a>
<%}%>
</td>
</tr>
</table>
</form>
</body>
</html>
<%@ include file="../init_free.jsp"%>
关于UICollectionView横向滑动
分页
的
问题
关于UICollectionView的contentSize为什么不起作用
(手机移动web)iscroll+html5+css3+js实现下拉刷新上拉
分页
的功能
基于iscroll4和html5、css3实现的下拉刷新、上拉
分页
的demo,兼容pc、android、ios、wp等设备。解决了上拉
分页
footer存在bug的
问题
。 支持chrome、ff、opera、360浏览器、百度浏览器、qq浏览器等众多主流浏览器。
JavaWeb实战开发
本课程详细讲解了以下内容: 1.jsp环境搭建及入门、虚拟路径和虚拟主机、JSP执行流程 2.使用Eclipse快速开发JSP、编码
问题
、JSP页面元素以及request对象、使用request对象实现注册示例 3.请求方式的编码
问题
、response、请求转发和重定向、cookie、session执行机制、session共享
问题
4.session与cookie
问题
及application、cookie补充说明及四种范围对象作用域 5.JDBC原理及使用Statement访问数据库、使用JDBC切换数据库以及PreparedStatement的使用、Statement与PreparedStatement的区别 6.JDBC调用存储过程和存储函数、JDBC处理大文本CLOB及二进制BLOB类型数据 7.JSP访问数据库、JavaBean(封装数据和封装业务逻辑) 8.MVC模式与Servlet执行流程、Servlet25与Servlet30的使用、ServletAPI详解与源码分析 9.MVC案例、三层架构详解、乱码
问题
以及三层代码流程解析、完善Service和Dao、完善View、优化用户体验、优化三层(加入接口和DBUtil) 1 0.Web调试及bug修复、
分页
SQL(Oracle、MySQL、SQLSERVER) 11.
分页
业务逻辑层和数据访问层Service、Dao、
分页
表示层Jsp、Servlet 12.文件上传及注意
问题
、控制文件上传类型和大小、下载、各浏览器下载乱码
问题
13.EL表达式语法、点操作符和中括号操作符、EL运算、隐式对象、JSTL基础及set、out、remove 14.过滤器、过滤器通配符、过滤器链、监听器 15.session绑定解绑、钝化活化 16.以及Ajax的各种应用 17. Idea环境下的Java Web开发
MySql深
分页
问题
详解
MySql深
分页
问题
详解1.
问题
描述2.
问题
分析3. 环境准备3.1 创建两个表3.2 创建两个函数3.3 编写存储过程3.4 编写存储过程3.5 创建索引3.6 验证测试4. 解决方案4.1 使用索引覆盖+子查询优化4.2 起始位置重定义4.3 降级策略5. 梳理总结 1.
问题
描述 日常开发中经常会涉及到数据查询
分页
的
问题
,一般情况下都是根据前端传入页数与页码通过mysql的limit方式实现
分页
,对于数据量较小的情况下没有
问题
,但是如果数据量很大,深
分页
可能导致查询效率低下,接口超时的情况。 2.
浅谈深
分页
问题
曾经面试被问到怎么解决深
分页
问题
,因为以前项目用来es,所以重点问的是es的深
分页
问题
,问我怎么解决深
分页
的
问题
,我的回答就是没解决。因为我觉得深
分页
就解决不了(先别浮现出各种网上解决深
分页
的方式,然后反驳这句话) 与其讨论什么从技术上去解决,还不如换个解读想下: 什么样的场景下会触发深
分页
? 当真的出现深
分页
问题
的时候,如何实现系统的自我保护? 对第一个
问题
:我觉得就两种情况:第一:正常的业务流量,用户真的闲得蛋疼了,真的就一页一页的往下翻,翻到了几千上万页(只有闲得蛋疼的才会去做这件事情,否则根.
Web 开发
81,092
社区成员
341,718
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章