无法从mysql获取要显示在我的jList中的数据



无法从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();
}       
}

如果您想填写列表,请在内部的resultSet循环中迭代:

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);

最新更新