给你看个Bean写的分页吧,自己参考: 1、 public class PageBean { public int curPage ; //当前是第几页 public int maxPage ; //一共有多少页 public int maxRowCount ; //一共有多少行 public int rowsPerPage=5 ;//每页多少行 public java.util.Vector data; public PageBean() { } public void countMaxPage() { //根据总行数计算总页数 if (this.maxRowCount % this.rowsPerPage==0){ this.maxPage = this.maxRowCount/this.rowsPerPage; }else{ this.maxPage = this.maxRowCount/this.rowsPerPage + 1; } } public Vector getResult() { return this.data; }
public PageBean(PageBusiness pageBusiness)throws Exception { this.maxRowCount = pageBusiness.getAvailableCount(); //得到总行数 this.data = pageBusiness.getResult(); //得到要显示于本页的数据 this.countMaxPage(); //计算总页数 } } 2、 public abstract class PageBusiness { java.util.Vector v;//要显示的信息。 /** *获得所有记录的数量 */ public abstract int getAvailableCount()throws Exception; /** *返回要显示的信息 */ public java.util.Vector getResult()throws Exception { return v; } /** *一个帮助方法,用于获得指定的表的记录数量 */ protected final int getAvailableCountHelper(Connection conn ,String tableName)throws Exception { int ret=0; Statement stmt=conn.createStatement(); String strSql="select count(*) from "+tableName; ResultSet rset=stmt.executeQuery(strSql); while(rset.next()) { ret=rset.getInt(1); } return ret; } /** *执行数据库操作,返回包含了指定页面信息的PageBean */ public abstract PageBean listData(String page)throws Exception;
<a href=page2.jsp?ck=<%request.getParameter("ck")%>>next page</a>
这样写不信啊,该如何写?请指点。to: ecaol(孤单北半球)
用bean分页我还不会,能教教吗?
在页面中处理参数pgparm直接得到已经选过的checkbox值使用就可以了
另外你可以在每次提交的时候把参数放到session中。
up...
up...
http://......?ck=1&ck=2&ck=3.....
String[] param=request.getParameterValues("ck");
如果要传递参数可以这样:<a href=page2.jsp?
<%
for(int i=0;i<param.length;i++){
out.print("ck="+param[0]+"&");
}
%>
>next page</a>
1、
public class PageBean
{
public int curPage ; //当前是第几页
public int maxPage ; //一共有多少页
public int maxRowCount ; //一共有多少行
public int rowsPerPage=5 ;//每页多少行
public java.util.Vector data;
public PageBean()
{
}
public void countMaxPage() { //根据总行数计算总页数
if (this.maxRowCount % this.rowsPerPage==0){
this.maxPage = this.maxRowCount/this.rowsPerPage;
}else{
this.maxPage = this.maxRowCount/this.rowsPerPage + 1;
}
}
public Vector getResult()
{
return this.data;
}
public PageBean(PageBusiness pageBusiness)throws Exception
{
this.maxRowCount = pageBusiness.getAvailableCount(); //得到总行数
this.data = pageBusiness.getResult(); //得到要显示于本页的数据
this.countMaxPage(); //计算总页数
}
}
2、
public abstract class PageBusiness
{
java.util.Vector v;//要显示的信息。
/**
*获得所有记录的数量
*/
public abstract int getAvailableCount()throws Exception;
/**
*返回要显示的信息
*/
public java.util.Vector getResult()throws Exception
{
return v;
}
/**
*一个帮助方法,用于获得指定的表的记录数量
*/
protected final int getAvailableCountHelper(Connection conn ,String tableName)throws Exception
{
int ret=0;
Statement stmt=conn.createStatement();
String strSql="select count(*) from "+tableName;
ResultSet rset=stmt.executeQuery(strSql);
while(rset.next())
{
ret=rset.getInt(1);
} return ret;
}
/**
*执行数据库操作,返回包含了指定页面信息的PageBean
*/
public abstract PageBean listData(String page)throws Exception;
}
我的分页是用<a href=...>链结实现的,没有用form,所以<input type=hidden ...>的方式不行。
我用了“大个”的方法。
但minger214(minger)的问题还是值得我们去讨论的。
欢迎!!!