我有一个表名jTable和AbstractTableModel MyModel;我可以成功地将抽象模型实现为jTable。当我使用Sql Query更新数据库时,按下窗体中的UPDATE按钮,我使用jTable.setModel(new MyModel())
重新填充jTable,它工作正常。当数据库更新时更新JTable和AbstractTableModel
但我认为这不是明智的做法,它会是巨大的行数。每次更新或将记录插入数据库后,重新设置或重新填充表模型到jTable都不是有效的过程。我读了一些fireTableRowUpdated的听众......但我不明白它应该怎么写?因为我不先更新jTable。我正在更新数据库,然后我需要更新当前的AbstractTableModel以及我的jTable。
有没有人可以引导我到正确的路径..我如何设置一个监听器或调用一个方法,因此AbstractTableModel也会更新和更新jTable。我认为它不应该填充数据库表中的所有行。
请参阅setValueAt(....),仅更新屏幕上可见的单元格,JViewport和JTables视图可以进行排序或过滤,注意任何需要阅读Oracle tutotial之前的内容。使用表 – mKorbel
谢谢mKorbel。其实我读了oracle教程。我已经可以实现过滤和排序成功。我已经知道setValueAt()。但我不明白如何从jButton按下触发setValueAt!请考虑我是新的Java –
一个jButton按下! ==最简单的方法应该是将所有数据从JDBC重新加载到XxxTableModel – mKorbel