无法从 mysql 获取要在我的 jList 中显示的数据。数据将使用 system.out.println 命令显示在控制台中,因此我知道我的数据库连接良好。这是我尝试使用的代码部分......
public class NewJFrame extends javax.swing.JFrame
{
{
String dbData;
//String dbUrl = "jdbc:mysql://your.database.domain/yourdatabasename";
String dbUrl = "jdbc:mysql://localhost:3306/movedb?autoReconnect=true&useSSL=false";
//String dbClass = "com.mysql.jdbc.Driver";
String query = "SELECT PID, + FirstName, + LastName FROM patientlist";
try
{
String selectQuery = "SELECT PID, + FirstName, + LastName FROM patientlist";
Class.forName("com.mysql.cj.jdbc.Driver");
Connection con = DriverManager.getConnection (dbUrl, "root", "Menace12!");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(query);
while (rs.next())
{
dbData = rs.getString(1) + ", " + rs.getString(3) + ", " + rs.getString(2);
System.out.println(dbData);
Object FirstName;
String LastName;
String PID;
}
DefaultListModel dlm = new DefaultListModel(); //needed to get the items from our combined string data into the list
//actually adding stuff to list.
dlm.addElement("PID" + ", " + "LastName" + " ," + "FirstName"); //adding objects to dlm
//jList1.setModel(dlm); //setting the objects in dlm to our list.
con.close();
} //end try
catch(ClassNotFoundException e)
{
e.printStackTrace();
}
catch(SQLException e)
{
e.printStackTrace();
}
}
最佳答案
如果您想填充列表,请在while循环内内部迭代结果集时执行此操作:
DefaultListModel dlm = new DefaultListModel();
while (rs.next()) {
dlm.addElement(new StringBuilder("")append(rs.getString("PID")).append(", ")
.append(rs.getString("FirstName")).append(", ")
.append(ra.getString("LastName")).toString());
// Providing that "FileName", "LastName", and "PID" are actally
// the field names within your database table.
}
jList1.setModel(dlm);
关于java - 无法从 mysql 获取要在我的 jList 中显示的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61534586/