1 public JTable query(String table) throws SQLException {
2 DefaultTableModel tablemodel = new DefaultTableModel();
3 String sql = "SELECT * FROM " + table + ";";
4 Statement stmt = this.conn.createStatement(); // 创建语句对象
5 ResultSet rest = stmt.executeQuery(sql); // 执行数据查询SELECT语句
6 ResultSetMetaData rsmd = rest.getMetaData(); // 返回表属性对象
7 int count = rsmd.getColumnCount(); // 获得列数
8 for (int j = 1; j <= count; j++) // 将各列名添加到表格模型作为标题,列序号>=1
9 tablemodel.addColumn(rsmd.getColumnLabel(j)); // 将结果集中各行数据添加到表格模型
10 Object[] columns = new Object[count]; // 创建对象数组,数组长度为列数
11 while (rest.next()) // 迭代遍历结果集,从前向后访问每行
12 {
13 for (int j = 1; j <= columns.length; j++) // 获得每行各列值
14 columns[j - 1] = rest.getString(j);
15 tablemodel.addRow(columns); // 表格模型添加一行,参数指明各列值
16 }
17 rest.close();
18 stmt.close();
19 return new JTable(tablemodel);
20 }