JTable只显示数据库最后一条数据,怎么解决哇

Javaswing使用JTable,显示数据库信息,但是只显示了最后一条怎么办啊啊,请问怎么解决

img

img

img

img

额,你之前提问我回答了,你for循环固定去路cout-1的数据,cout-1改成i,for循环的rs1.next()最好改为i<cout

该回答引用GPTᴼᴾᴱᴺᴬᴵ
如果你的 JTable 只显示了最后一条记录,那么很有可能是数据模型没有正确设置。你需要在实例化 JTable 对象的时候,将数据模型设置为合适的模型。

以下是一个简单的例子,假设你的数据库信息已经存储在一个 List 中,每个元素是一个对象,包含了一行信息的各个字段:

// 定义表头
String[] columnNames = {"ID", "姓名", "年龄"};

// 将数据库信息存储在 List 中
List<User> userList = getDataFromDatabase();

// 将 List 转化为 Object[][] 二维数组,用于作为表格数据
Object[][] tableData = new Object[userList.size()][columnNames.length];
for (int i = 0; i < userList.size(); i++) {
    User user = userList.get(i);
    tableData[i][0] = user.getId();
    tableData[i][1] = user.getName();
    tableData[i][2] = user.getAge();
}

// 创建表格模型
TableModel tableModel = new DefaultTableModel(tableData, columnNames);

// 创建 JTable 并设置数据模型
JTable table = new JTable(tableModel);

// 将 JTable 放入 JScrollPane 中并显示
JScrollPane scrollPane = new JScrollPane(table);
add(scrollPane);


在这个例子中,我们首先定义了表头,然后将数据库信息存储在一个 List 中。接着,我们将 List 转化为二维数组,并创建了一个默认的表格模型 DefaultTableModel。最后,将表格模型设置到 JTable 中,并将 JTable 放入一个 JScrollPane 中显示。

如果你已经按照类似的方式设置了 JTable,但是仍然只显示了最后一条记录,那么你需要检查一下数据模型的设置是否正确。可能需要对数据模型进行进一步的调试和修改。