java中,想用Vector实现查询数据库,然后表格输出,怎么查询界面不能输出表格,连表格头都输不出来?? javajtable数据库 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 代码没有用到一些设计模式,难以理解。建议界面代码与功能代码分离开来,也就是界面类通过一些事件获得结果都是由调用功能类的相关操作并查询数据库类完成的,查询数据库单独作为一个类,提供query和update方法及其它必要方法,如获得连接关闭连接释放资源等。这只是一个大概,没有涉及到一些细节。比如调用query()方法执行select语句返回显示到JTable上的Vector<Vector<Object>> Vector<Vector<Object>> query(String prep, String[] parameter) throws SQLException { Vector<Vector<Object>> table = new Vector<>(); Vector<Object> row; try (PreparedStatement ps = conn.prepareStatement(prep); ResultSet rs = ps.executeQuery();) { for (int i = 0; i < parameter.length; i++) ps.setString(i + 1, parameter[i]); ResultSetMetaData data = rs.getMetaData(); int count = data.getColumnCount(); row = new Vector<>(); row.add("Check"); for (int i = 1; i <= count; ++i) row.add(data.getColumnName(i)); table.add(row); while (rs.next()) { row = new Vector<>(); row.add(Boolean.FALSE); for (int i = 1; i <= count; i++) row.add(rs.getObject(i)); table.add(row); } return table; } } int update(String prep, String[] parameter) throws SQLException { try (PreparedStatement ps = conn.prepareStatement(prep);) { for (int i = 0; i < parameter.length; i++) ps.setString(i + 1, parameter[i]); return ps.executeUpdate(); } }个人观点,供参考。 代码确实很乱.... 不知道你表格是怎么封装的,看到一行JScrollpane封装了JTable,但是你的没有封装JScrollpane对象啊 初学者,sun公司提供了那么多包,你们都可以记得里面的方法? 如何仅知道class名,取得包括package的全名? 在线等高手解决~~ 关于读取文件的问题 一个输入3个数,算平均值,但不知为什么经常抛出异常。。。 java中调用带记录集的存储过程时,存储过程中的游标参数在java中怎么传,来都有分,有解即结! 现在想求出次数出现最多的三个数字的组合 关于JCreator的问题(hot~~~~在线等待) 求助一个方法,简单阿!!!!!有关删除文件夹的 各位大虾,能否告知JAVA的核心思想 t.interrupt() 问题 求助!!! JDK双击没反应!
比如调用query()方法执行select语句返回显示到JTable上的Vector<Vector<Object>> Vector<Vector<Object>> query(String prep, String[] parameter)
throws SQLException {
Vector<Vector<Object>> table = new Vector<>();
Vector<Object> row;
try (PreparedStatement ps = conn.prepareStatement(prep);
ResultSet rs = ps.executeQuery();) {
for (int i = 0; i < parameter.length; i++)
ps.setString(i + 1, parameter[i]);
ResultSetMetaData data = rs.getMetaData();
int count = data.getColumnCount();
row = new Vector<>();
row.add("Check");
for (int i = 1; i <= count; ++i)
row.add(data.getColumnName(i));
table.add(row);
while (rs.next()) {
row = new Vector<>();
row.add(Boolean.FALSE);
for (int i = 1; i <= count; i++)
row.add(rs.getObject(i));
table.add(row);
}
return table;
}
} int update(String prep, String[] parameter) throws SQLException {
try (PreparedStatement ps = conn.prepareStatement(prep);) {
for (int i = 0; i < parameter.length; i++)
ps.setString(i + 1, parameter[i]);
return ps.executeUpdate();
}
}
个人观点,供参考。