【发布时间】:2016-12-19 11:32:52
【问题描述】:
我是编程的新用户,我已经开始学习 Java,我一直在编写一个简单的程序来将在我的 UI 的文本字段中输入的数据插入到 MYSQL,我能够将数据插入到 MYSQL db。但问题是我无法关闭连接。当我在我的程序中编写代码来关闭连接时,会出现很多错误。
在不关闭连接的情况下插入数据的我的代码
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
try {
String url = "jdbc:mysql://localhost/testdb";
String user = "root";
String password = "mysql";
Connection myConn = DriverManager.getConnection(url, user, password);
Statement myStmt = myConn.createStatement();
String sql= "insert into table1 (no,name,address,password) values ('"+numberr.getText()+"', '"+namee.getText()+"', '"+addresse.getText()+"', '"+passworde.getText()+"')";
myStmt.executeUpdate(sql);
System.out.println("Insert complete");
} catch(SQLException se){
se.printStackTrace();
}
}
当我编写关闭连接程序时,我的代码如下所示并抛出很多错误:
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
try {
String url = "jdbc:mysql://localhost/testdb";
String user = "root";
String password = "mysql";
Connection myConn = DriverManager.getConnection(url, user, password);
Statement myStmt = myConn.createStatement();
String sql= "insert into table1 (no,name,address,password) values ('"+numberr.getText()+"', '"+namee.getText()+"', '"+addresse.getText()+"', '"+passworde.getText()+"')";
myStmt.executeUpdate(sql);
System.out.println("Insert complete");
} catch(SQLException se) {
se.printStackTrace();
} catch(Exception e) {
e.printStackTrace();
} finally {
try {
if(myStmt!=null) {
myStmt.close();
}
} catch(SQLException se) {
}// do nothing
try {
if(myConn!=null) {
myConn.close();
}
} catch(SQLException se) {
se.printStackTrace();
}
}//end finally
System.out.println("Goodbye!");
}
【问题讨论】:
-
它会抛出什么样的错误?
-
您应该查看为您的 SQL 准备的语句。该代码将使您对 SQL 注入开放。
-
要获得适当的帮助,您需要编写适当的问题。显示您遇到的错误,并提供您遇到问题的代码的最小可验证示例。
-
我无法运行它说类 xxx 没有主要方法的文件。但我有主要方法。