JTable查询结果叠加的问题 我使用了JTable显示从数据库中查询到的内容,点击某个按钮之后,数据库中的内容就在JTable里显示,但是,如果再次点击此按钮,那么数据库中的信息就会接在刚才显示信息的后面,等于两次查询的结果叠加在了一起,JTable里面就显示了两遍数据库中的信息,求助这样的问题应该怎么解决??? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 再次查询的时候,你的JTable对应的模型数据需要重新赋值,JTable也要重新绘制,没有贴代码只能思路上告诉你贴出代码和数据表的话可以帮你改改 try { sql = con.prepareStatement("select * from test"); resultset = sql.executeQuery(); ResultSetMetaData rsmd=resultset.getMetaData(); for(int i = 1; i <= rsmd.getColumnCount(); i++) title.add(rsmd.getColumnName(i)); while(resultset.next()){ Vector <String> tmp=new Vector<String>(); for(int i = 1; i <= rsmd.getColumnCount(); i++) tmp.add(resultset.getString(i)); content.add(tmp); } dftm = new DefaultTableModel(content,title); table = new JTable(dftm); // table.setRowHeight(20); table.setEnabled(false); table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); scrollPane.getViewport().add(table); con.close(); }catch (Exception ex) { System.out.println (ex); } 这句去掉 scrollPane.getViewport().add(table); new ScrollPanel的时候就通过ScrollPane sp = new ScrollPane(table);的方法将table添加进去。更新table的时候,只需要table.setModel(TableModel model)方法ScrollPane里面会自动更新table如果每更新一次tableModel都add(table)当然后重复。 java困惑 求1个学生注册小程序 (200分) 为什么效果出不来啊? 我是菜鸟,向各位大侠请教个关于java中关于输入输出流的问题 小弟请教一个问题,大家帮帮我急死我了! 如何把yyyy-MM-dd HH:mm格式日期转为时间戳 如何解决socket的重连接!(急………) jdbc:为什么在DataSource中无法获得Connection???? 如何使JtextArea中能够显示中文信息?来者有分 请教一个关于static关键字的基础问题 完成通用的微博开发接口,只要采用 OAuth v1.0 认证的都支持 跪求解决JDBC的问题
sql = con.prepareStatement("select * from test");
resultset = sql.executeQuery();
ResultSetMetaData rsmd=resultset.getMetaData();
for(int i = 1; i <= rsmd.getColumnCount(); i++)
title.add(rsmd.getColumnName(i));
while(resultset.next()){
Vector <String> tmp=new Vector<String>();
for(int i = 1; i <= rsmd.getColumnCount(); i++)
tmp.add(resultset.getString(i));
content.add(tmp);
}
dftm = new DefaultTableModel(content,title);
table = new JTable(dftm);
// table.setRowHeight(20);
table.setEnabled(false);
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
scrollPane.getViewport().add(table);
con.close();
}catch (Exception ex) {
System.out.println (ex);
}
new ScrollPanel的时候就通过ScrollPane sp = new ScrollPane(table);
的方法将table添加进去。
更新table的时候,只需要table.setModel(TableModel model)方法
ScrollPane里面会自动更新table
如果每更新一次tableModel都add(table)当然后重复。