gpt4 book ai didi

java - 如何给jtable设置值?

转载 作者:行者123 更新时间:2023-12-02 01:55:39 24 4
gpt4 key购买 nike

我的数据库中有两个表(使用mysql工作台),但我无法同时将这两个表中的数据设置到jtable。我该如何解决这个问题?(从两个表或相关字段中获取值并将其设置到jtable中)

最佳答案

I mean two resultsets?

为什么有两个结果集?您有两个选择:

  1. 更改 SQL 查询以将数据放入单个结果集中

  2. 不要使用 DBUtils 创建 TableModel

在这种情况下,您需要从 ResultSet 手动加载数据,一次一行。

对于第一个结果集,您需要为表创建列,然后添加数据行。基本逻辑是:

    Vector<Object> columnNames = new Vector<Object>();
Vector<Object> data = new Vector<Object>();

// Read data from a table

String sql = "Select * from ???";
Statement stmt = connection.createStatement();
ResultSet rs = stmt.executeQuery( sql );
ResultSetMetaData md = rs.getMetaData();
int columns = md.getColumnCount();

// Get column names

for (int i = 1; i <= columns; i++)
{
columnNames.addElement( md.getColumnName(i) );
}

// Get row data

while (rs.next())
{
Vector<Object> row = new Vector<Object>(columns);

for (int i = 1; i <= columns; i++)
{
row.addElement( rs.getObject(i) );
}

data.addElement( row );
}

rs.close();
stmt.close();
connection.close();
}
catch(Exception e)
{
System.out.println( e );
}

对于第二个 ResultSet,您只需将数据添加到 Vector。

然后,使用两个 Vector 创建 DefaultTableModel,并使用 TableModel 创建 JTable。

关于java - 如何给jtable设置值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52356425/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com