MySql数据库的Java连接问题
当我试图将值检索到MySql数据库的Java连接问题,java,mysql,swing,Java,Mysql,Swing,当我试图将值检索到JTable中时,它会在con=Connect.connectdb()行上显示“将connectdb转换为connection”。但是我已经声明了我的Connect类,没有任何错误,并且能够成功地从另一个表单插入值。这是我的代码: private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { try{ co
JTable
中时,它会在con=Connect.connectdb()
行上显示“将connectdb转换为connection”。但是我已经声明了我的Connect
类,没有任何错误,并且能够成功地从另一个表单插入值。这是我的代码:
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
try{
con= Connect.ConnectDB();
String sql="select * from pharmacy";
pst = con.prepareStatement(sql);
pst.execute();
jTable1.setModel(DbUtils.resultSetToTableModel(rs));
JOptionPane.showMessageDialog(this,"Succesfully stored","User",JOptionPane.INFORMATION_MESSAGE);
} catch(SQLException ex){
JOptionPane.showMessageDialog(this,ex);
}
}
这是我的Connect
课程:
public class Connect {
Connection con=null;
public static Connection ConnectDB(){
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/hms_db1","root","root");
return con;
}catch(ClassNotFoundException | SQLException e){
JOptionPane.showMessageDialog(null, e);
return null;
}
}
}
尝试用pst.executeQuery()
代替pst.execute()
这是从中获取NullPointerException的行。。因为rsnull
换行
pst.execute();
到
您尚未将executeQuery()的结果分配给resultSet引用!!因为你传递了一个空引用,所以你得到了一个NPE。希望这能回答您的问题。show
Connect
class(Connection)Connect.ConnectDB()代码>正在工作?不,它得到错误“空指针异常”替换连接con=null代码>通过连接con代码>数据库是否存在??发生了什么行错误?是否添加了mysql库?jTable1.setModel(DbUtils.resultsetTableModel(rs));在这一行中,“rs”来自哪里?ResultSet rs=null;在类下,是否尝试将结果存储到“rs”中,如:ResultSet rs=pst.executeQuery()?是的,先生,我已经做了,现在我可以从我插入值的表单中看到jtable值,但是我想在同一个包中的另一个表单中看到jtable及其值,并在con=“Connect.ConnectDB()”;行中得到强制转换错误;。我已经像“con=(Connection)Connect.ConnectDB();”一样铸造了这一行,并且工作得很好。
jTable1.setModel(DbUtils.resultSetToTableModel(rs));
pst.execute();
rs = pst.executeQuery();