gpt4 book ai didi

java - JTable 未使用 DButils 从结果集中填充

转载 作者:行者123 更新时间:2023-11-30 03:52:22 25 4
gpt4 key购买 nike

我一直在尝试了解如何使用结果集中的数据填充 jtable,并发现使用 DBUtils 可能是最简单的方法,但不幸的是它根本不适合我。程序运行,但 jtable 仍然是空的。我不明白我哪里出了问题。我有 import net.proteanit.sql.DbUtils;在顶部导入并将 jar 添加到类路径中。这是我的代码:

private void jPanel3FocusGained(java.awt.event.FocusEvent evt) {                                    

// TODO add your handling code here:

// JDBC driver name and database URL
String JDBC_DRIVER = "com.mysql.jdbc.Driver";
String DB_URL = "jdbc:mysql://localhost/new";

// Database credentials
String USER = "root";
String PASS = "";

Connection conn = null;
PreparedStatement stmt = null;
try{
//STEP 2: Register JDBC driver
Class.forName("com.mysql.jdbc.Driver");

//STEP 3: Open a connection
System.out.println("Connecting to database...");
conn = DriverManager.getConnection(DB_URL,USER,PASS);

//STEP 4: Execute a query
System.out.println("Creating statement...");
String sql;
sql = "SELECT * FROM user";
stmt = conn.prepareStatement(sql);
//Bind values into the parameters.
ResultSet rs = stmt.executeQuery();

jTable1.setModel(DbUtils.resultSetToTableModel(rs));
}
catch (SQLException ex) {

JOptionPane.showMessageDialog(null, ex);
}
catch(Exception e){
//Handle errors for Class.forName
e.printStackTrace();
}


finally {

try {

stmt.close();
conn.close();

}
catch (SQLException e) { /* ignore */

}



try {

conn.close();

} catch (SQLException e) { /* ignore */

}
}
}

最佳答案

我被困在同一点上,所以我使用了“vector ”

我们都知道,在考虑 Vector 的实现时,使用 Arraylist 是更好的方法。但是在使用 jTables 时,默认情况下,您可以使用一些简单的方法来管理数据流并填充到 jTable 中,将简化编码。因此,如果您像我一样在编码这些场景方面经验较少,我建议使用 vector

只需导入这段代码即可。

导入java.util.Vector;

要了解如何使用 vector 来处理 ResultSet,请参阅 this

关于java - JTable 未使用 DButils 从结果集中填充,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24104880/

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