写个BEAN,直接搞定
package sei;import java.sql.*;
//import java.util.*;public class PageResultSet { // private Collection data = null;//分页数据
private int curPage=1;//当前页
private int pageSize=15;//每页显示的记录数
private long rowsCount=0;//记录行数
private int pageCount=1;//页数
private String SQL="";//查询条件 public String getSQL() {
return SQL;
}
//getCurPage:返回当前的页数
public int getCurPage() {
return curPage;
} //getPageSize:返回分页大小
public int getPageSize() {
return pageSize;
} //getRowsCount:返回总记录行数
public long getRowsCount() {
return rowsCount;
} //getPageCount:返回总页数
public int getPageCount() {
return pageCount;
}
//第一页
public int first() {
return 1;
} //最后一页
public int last() {
return pageCount;
} //上一页
public int previous() {
return (curPage - 1 < 1) ? 1 : curPage - 1;
}
//下一页
public int next() {
return (curPage + 1 > pageCount) ? pageCount : curPage + 1;
} //第一页
public boolean isFirst() {
return (curPage==1)?true:false;
} //最后一页
public boolean isLast() {
return (curPage==pageCount)?true:false;
} //获取当前页数据
//SelectFileds:选择要显示的字段 *
//IdFiled:要进行排序的字段
//SQL:查询条件 如:(User='11')
//IsWhere:SQL语句中如果有Where条件那么该值为"",否则为"Where"
//CurPage:要显示的当前页
public ResultSet getData(String SelectFileds,String IdFiled,String Table, String sql,int CurPage) {
if (SelectFileds.equals("")||SelectFileds==null)SelectFileds="*";
if(IdFiled==null||IdFiled.equals(""))return null;
String IsWhere="";
if (sql==null) sql="";
if(sql.equals("")){IsWhere="Where";this.SQL="";sql="";}else{ IsWhere="And";this.SQL=sql;sql="Where "+sql;}
if (CurPage==0) CurPage=1;
this.curPage=CurPage;
ResultSet rs;
SqlBean db = new SqlBean();
try {
rs = db.executeQuery("select count(*) as A FROM "+Table+" "+sql);
if (rs.next()) rowsCount=rs.getInt("A");
//this.SQL="select top "+pageSize+" "+SelectFileds+" FROM "+Table+" "+sql+" "+IsWhere+" "+IdFiled+" Not In (Select Top "+((curPage-1)*pageSize)+" "+IdFiled+" "+Table+" "+sql+" order by "+IdFiled+" ASC) order by "+IdFiled+" ASC";
pageCount = (int)Math.ceil((rowsCount + pageSize-1) / pageSize);
rs=db.executeQuery("select top "+pageSize+" "+SelectFileds+" FROM "+Table+" "+sql+" "+IsWhere+" "+IdFiled+" Not In (Select Top "+((curPage-1)*pageSize)+" "+IdFiled+" FROM "+Table+" "+sql+" order by "+IdFiled+" ASC) order by "+IdFiled+" ASC");
} catch (Exception e) {rs=null;}
return rs;
} /**
* 获取工具条
* @return String
*/
public String getToolBar(String fileName){
String temp="";
if(fileName.indexOf("?")==-1){temp="?";}else{ temp="&";}
String str="<table border=0 width=550 align=center><form method='post' name='frmPage' action='"+fileName+"'>";
str=str+"<tr align=center valign=middle>";
str=str+"<td>【每页"+pageSize+"条记录】</td>";
str=str+"<td>【共"+pageCount+"页/"+rowsCount+"条记录】</td>";
if(curPage<=1)
{
str=str+"<td>【首页】</a></td>";
str=str+"<td>【上一页】</td>";
}else{
str=str+"<td><a href=\""+fileName+temp+"cur_page=1&SQL="+SQL+"\">【首页】</a></td>";
str=str+"<td><a href=\""+fileName+temp+"cur_page="+(curPage-1)+"&SQL="+SQL+"\">【上一页】</a></td>";
}
if (curPage<pageCount)
{
str=str+"<td><a href=\""+fileName+temp+"cur_page="+(curPage+1)+"&SQL="+this.SQL+"\">【下一页】</a></td>";
str=str+"<td><a href=\""+fileName+temp+"cur_page="+pageCount+"&SQL="+SQL+"\">【尾页】</a></td>";
}else{
str=str+"<td>【下一页】</td>";
str=str+"<td>【尾页】</td>";
}
str+="<td>转到<select name='page' onChange='GoPage()'>";
for(int i=1;i<=pageCount;i++)
{
if(i==curPage)
str+="<option value='"+i+"' selected>第"+i+"页</option>";
else
str+="<option value='"+i+"'>第"+i+"页</option>";
}
str+="</select></td>";
// str+="<td>转到<INPUT type='submit' VALUE=' GO ' CLASS='button' onmouseover='MOX()' onmouseout='MUX()' onClick=\"location='"+fileName+temp+"cur_page='+\" </td>">
str+="</tr></form></table>"; str+="<SCRIPT Language = javascript>";
str+="function GoPage(){window.location=\""+fileName+temp+"cur_page=\"+document.frmPage.page.options[document.frmPage.page.selectedIndex].value+\"&SQL="+SQL+"\"}";
str+="</SCRIPT>";
return str;
}
}
package sei;import java.sql.*;
//import java.util.*;public class PageResultSet { // private Collection data = null;//分页数据
private int curPage=1;//当前页
private int pageSize=15;//每页显示的记录数
private long rowsCount=0;//记录行数
private int pageCount=1;//页数
private String SQL="";//查询条件 public String getSQL() {
return SQL;
}
//getCurPage:返回当前的页数
public int getCurPage() {
return curPage;
} //getPageSize:返回分页大小
public int getPageSize() {
return pageSize;
} //getRowsCount:返回总记录行数
public long getRowsCount() {
return rowsCount;
} //getPageCount:返回总页数
public int getPageCount() {
return pageCount;
}
//第一页
public int first() {
return 1;
} //最后一页
public int last() {
return pageCount;
} //上一页
public int previous() {
return (curPage - 1 < 1) ? 1 : curPage - 1;
}
//下一页
public int next() {
return (curPage + 1 > pageCount) ? pageCount : curPage + 1;
} //第一页
public boolean isFirst() {
return (curPage==1)?true:false;
} //最后一页
public boolean isLast() {
return (curPage==pageCount)?true:false;
} //获取当前页数据
//SelectFileds:选择要显示的字段 *
//IdFiled:要进行排序的字段
//SQL:查询条件 如:(User='11')
//IsWhere:SQL语句中如果有Where条件那么该值为"",否则为"Where"
//CurPage:要显示的当前页
public ResultSet getData(String SelectFileds,String IdFiled,String Table, String sql,int CurPage) {
if (SelectFileds.equals("")||SelectFileds==null)SelectFileds="*";
if(IdFiled==null||IdFiled.equals(""))return null;
String IsWhere="";
if (sql==null) sql="";
if(sql.equals("")){IsWhere="Where";this.SQL="";sql="";}else{ IsWhere="And";this.SQL=sql;sql="Where "+sql;}
if (CurPage==0) CurPage=1;
this.curPage=CurPage;
ResultSet rs;
SqlBean db = new SqlBean();
try {
rs = db.executeQuery("select count(*) as A FROM "+Table+" "+sql);
if (rs.next()) rowsCount=rs.getInt("A");
//this.SQL="select top "+pageSize+" "+SelectFileds+" FROM "+Table+" "+sql+" "+IsWhere+" "+IdFiled+" Not In (Select Top "+((curPage-1)*pageSize)+" "+IdFiled+" "+Table+" "+sql+" order by "+IdFiled+" ASC) order by "+IdFiled+" ASC";
pageCount = (int)Math.ceil((rowsCount + pageSize-1) / pageSize);
rs=db.executeQuery("select top "+pageSize+" "+SelectFileds+" FROM "+Table+" "+sql+" "+IsWhere+" "+IdFiled+" Not In (Select Top "+((curPage-1)*pageSize)+" "+IdFiled+" FROM "+Table+" "+sql+" order by "+IdFiled+" ASC) order by "+IdFiled+" ASC");
} catch (Exception e) {rs=null;}
return rs;
} /**
* 获取工具条
* @return String
*/
public String getToolBar(String fileName){
String temp="";
if(fileName.indexOf("?")==-1){temp="?";}else{ temp="&";}
String str="<table border=0 width=550 align=center><form method='post' name='frmPage' action='"+fileName+"'>";
str=str+"<tr align=center valign=middle>";
str=str+"<td>【每页"+pageSize+"条记录】</td>";
str=str+"<td>【共"+pageCount+"页/"+rowsCount+"条记录】</td>";
if(curPage<=1)
{
str=str+"<td>【首页】</a></td>";
str=str+"<td>【上一页】</td>";
}else{
str=str+"<td><a href=\""+fileName+temp+"cur_page=1&SQL="+SQL+"\">【首页】</a></td>";
str=str+"<td><a href=\""+fileName+temp+"cur_page="+(curPage-1)+"&SQL="+SQL+"\">【上一页】</a></td>";
}
if (curPage<pageCount)
{
str=str+"<td><a href=\""+fileName+temp+"cur_page="+(curPage+1)+"&SQL="+this.SQL+"\">【下一页】</a></td>";
str=str+"<td><a href=\""+fileName+temp+"cur_page="+pageCount+"&SQL="+SQL+"\">【尾页】</a></td>";
}else{
str=str+"<td>【下一页】</td>";
str=str+"<td>【尾页】</td>";
}
str+="<td>转到<select name='page' onChange='GoPage()'>";
for(int i=1;i<=pageCount;i++)
{
if(i==curPage)
str+="<option value='"+i+"' selected>第"+i+"页</option>";
else
str+="<option value='"+i+"'>第"+i+"页</option>";
}
str+="</select></td>";
// str+="<td>转到<INPUT type='submit' VALUE=' GO ' CLASS='button' onmouseover='MOX()' onmouseout='MUX()' onClick=\"location='"+fileName+temp+"cur_page='+\" </td>">
str+="</tr></form></table>"; str+="<SCRIPT Language = javascript>";
str+="function GoPage(){window.location=\""+fileName+temp+"cur_page=\"+document.frmPage.page.options[document.frmPage.page.selectedIndex].value+\"&SQL="+SQL+"\"}";
str+="</SCRIPT>";
return str;
}
}
解决方案 »
- JS弹出对话框问题
- 求助一个javascript的问题,非常感谢
- 你在实战项目中,用到Java在Web方面的哪些技术? up有分.
- 再顶一次,<jsp:param name="oldname" value="<%=request.getParameter(\"name\")%>"/>中间\是不是正确的啊,打印有误吧,大家看看,初学者,
- ActionForm 属于 Model 层还是属于 View 层?
- 求助:用WebBrowser控件打印时是否可以只是在最后一页的底端打印页脚
- 急需~~~~有关搜索的问题···
- 倒计时怎么计算!???
- 100分紧急求助,如果把jdk和tomcat打包一起安装?
- 请问作好的JSP程序,如何调试?(额没分了)
- 谁有介绍软件的说明书的格式,老板让我介绍我们的产品,急!!!
- 请教一个菜鸟问题?
对应的属性里设置每页显示的条数。
while(rs.next()) {
if(在页码范围内){
out.println("<tr><td>"+rs.getString("id")+"</td><td>"+rs.getString("name")+"</td><td>"+rs.getString("home")+"</td></tr>");
}else{
break;
}
}