我有一个带有AbstractTableModel MyModel的表名jTable;我可以成功地将抽象模型实现为jTable。当我使用Sql Query更新数据库按下表单中的UPDATE按钮时,我使用jTable.setModel(new MyModel())
重新填充jTable,它工作正常。
但我认为这不是明智的程序,因为它将是大量行的情况。每次更新或将记录插入数据库后,重新设置或重新填充表模型到jTable是不是一个有效的过程。我读了一些关于fireTableRowUpdated的监听器......但是我无法理解它应该如何编写?因为我不先更新jTable。我正在更新数据库然后我需要更新当前的AbstractTableModel以及我的jTable。
有没有人可以指导我找到正确的路径..如何设置监听器或调用方法,因此AbstractTableModel也将更新和更新jTable。我认为它不应该重新填充数据库表中的所有行。
答案 0 :(得分:1)
感谢所有发表意见的人。最后我可以找到答案。 我在AbstractTableModel中创建了方法:
myObject rec = new myObject();
public void updateRow(Object value, int row){
rec.set(row, value);
fireTableRowsUpdated(row, row);
}
and in main class
mymodel.updateRow(newvalueObject, rowindex);
它有效。谢谢你指导我...