用 useBean 进行分页显示怪问题

coollzh 2003-10-31 05:22:37
我的jsp页面是一个普通的查询显示页面,输入多个查询条件,提交form到本页,然后通过<jsp:setProperty>取得条件,并通过bean的方法得到数据记录,一般情况下没有问题,但是当我的记录有多页时,我点击“下一页”,进入第二页,此时我再在输入不同的查询条件,并点击查询按钮,提交查询条件,不知道为什么我这时提交的条件就是进不到bean中,但是bean的属性仍旧被赋了一遍值,该值就是我点击“下一页”连接时,通过queryString发送到服务器端数据,而我重新提交查询条件时,页码保持不变,原来是第几页,重新提交后仍旧时第几页

我的代码
<jsp:useBean id="bean" scope="request" class="com.pak.RecvBalanceBean"/>

<jsp:setProperty name="bean" property="*"/>

...全文
16 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
yanxibang 2004-02-21
  • 打赏
  • 举报
回复
package hzdq.fdjc.Common;

import java.sql.*;
import java.util.*;

/**
* Title:分页
* Description:
* Copyright: Copyright (c) 2004
* Company:
* author:颜喜班
* @version 1.0
*/
public class SplitPager
{
/*
* _sql_str:传入的sql语句
* _total_records: 总记录数目
* _pageSize: 每页显示的记录数目
* _page: 所分的逻辑页数
*/
private Connection con=null;
private Statement stmt=null;
private ResultSet rs=null;
private ResultSetMetaData rsmd=null;
private String _sql_str;
private int _total_records;
private int _pages;
private int _pagesize;
public void setConnection(Connection con)
{
this.con=con;
if (this.con == null)
System.out.println("Failure to get a connection!");
else
System.out.println("Success to get a connection!");
}
public void initialize(String sqlStr,int pageSize)
{
this._sql_str=sqlStr;
this._pagesize=pageSize;
try{
stmt=this.con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
rs=stmt.executeQuery(this._sql_str);
rsmd=rs.getMetaData();
if (rs!=null)
{
rs.last();
this._total_records = rs.getRow();
rs.first();
this._pages = (this._total_records - 1) / this._pagesize + 1;
}
}
catch(SQLException e){System.out.println(e.toString()); }
}
public Vector getPage(int ipage){
Vector vData=new Vector();
int n=ipage;
int m=0;
m=(n-1)*this._pagesize+1;
try{
if (rs!=null)
{
rs.absolute(m);
for(int i=0;i<this._pagesize;i++){
String[] sData=new String[rsmd.getColumnCount()];
for(int j=0;j<rsmd.getColumnCount();j++)
{
sData[j]=rs.getString(j+1);
}
if (sData==null)
{
break;
}
vData.addElement(sData);
rs.next();
}
}
rs.close();
stmt.close();
}
catch(SQLException e){System.out.println(e.toString()); }
return vData;
}
public int getPages()
{
return this._pages;
}
public int getTotalRecords()
{
return this._total_records;
}

}

coollzh 2003-10-31
  • 打赏
  • 举报
回复
但是查询条件总是不变,还是换页时通过get方法提交的数据,是何道理?
kui 2003-10-31
  • 打赏
  • 举报
回复
你在新查询提交时或新查询显示时把页码设置为第一页。
coollzh 2003-10-31
  • 打赏
  • 举报
回复
<jsp:setProperty name="bean" property="*"/>
就是用这个方法传递的
Aileenwyh 2003-10-31
  • 打赏
  • 举报
回复
你的pageNumber应该做为参数传给RecvBalanceBean。

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧