Topic: 表格中数据用resultset显示正常,编辑表格后无法正常更新的问题

  Print this page

1.表格中数据用resultset显示正常,编辑表格后无法正常更新的问题 Copy to clipboard
Posted by: lilingbo
Posted on: 2003-03-03 11:37

我重写的扩展的AbstractTableModel类的方法如下
public Object getValueAt(int r, int c)
{ try
{ ResultSet rsb = getResultSet();
rsb.absolute(r + 1);
return rsb.getString(c+1);
}
catch(SQLException e)
{ System.out.println("Error " + e);
return null;
}
}
public void setValueAt(Object value,int r,int c)
{ ResultSet rsb = getResultSet();
try
{
rsb.absolute(r+1);

rsb.updateString(c + 1,value.toString());

rsb.updateRow();

fireTableCellUpdated(r,c);

}
catch(SQLException e)
{
System.out.println("Error " + e);

}

}
1、如果查询后的结果用数组存储,然后在表格中显示出来,覆写getValueAt()和
setValueAt()方法,然后编辑表格中的内容,可以正常显示。但是这样的话,初始化
表格的速度很慢,一个几千条的数据库要10多秒钟。
2、如果查询后的结果保存在ResultSet中,然后覆写getValueAt()时用ResultSet中的行与列返回,这时初始化速度很快,显示也没有问题,但如果编辑某个单元后却无法正常显示
,同一行的其它值都变成空的了。看来是覆写setValueAt()时更新ResultSet的方法不对。
请问各位高手,怎样解决这个问题?谢谢! lilingbo@163.com

2.Re:表格中数据用resultset显示正常,编辑表格后无法正常更新的问题 [Re: lilingbo] Copy to clipboard
Posted by: diystar
Posted on: 2003-03-04 09:23

覆盖JTable中的editingStopped方法


   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923