Привет, я разрабатываю проект в java и использую для этого netbeans. У меня есть код для подключения к базе данных. Он работает, но значения не вводятся в базу данных. Я предоставлю код ниже. У меня есть 2 классов и первый один ниже:Значения не поступают в базу данных mysql
package javasql;
import com.mysql.jdbc.Driver;
import java.sql.*;
public class Connect {
public Connect() throws SQLException{
makeConnection();
}
private Connection koneksi;
public Connection makeConnection() throws SQLException {
if (koneksi == null) {
new Driver();
// buat koneksi
koneksi = DriverManager.getConnection(
"jdbc:mysql://localhost:3306","root","virus");
}
return koneksi;
}
public static void main(String args[]) {
try {
Connect c = new Connect();
System.out.println("Connection established");
}
catch (SQLException e) {
e.printStackTrace();
System.err.println("Connection Failure");
}
}
}
Второй класс это:
package javasql;
import java.sql.*;
public class SqlStatement {
private Statement statement;
public SqlStatement() throws SQLException{
}
public Statement makeStatement() throws SQLException{
Connect c = new Connect();
Connection conn = c.makeConnection();
statement = conn.createStatement();
return statement;
}
public void insert(String name,int npm)throws SQLException{
statement.execute("insert into student values(\""+name+"\","+npm+");");
}
public static void main(String arg[]) throws SQLException{
SqlStatement sss;
sss = new SqlStatement();
sss.makeStatement();
try {
SqlStatement s = new SqlStatement();
s.insert("Ferdi",1);
s.insert("Anca",2);
System.out.println("Success");
}
catch(SQLException e){
System.out.println("Failed");
e.printStackTrace();
}
}
}
Это порождает исключение NullPointerException, не так ли? Трассировка стека должна объяснить вам почему. Ваш код грязный: вы создаете объекты дважды без причины, игнорируете возвращаемые значения, не используйте подготовленные инструкции. –
@JBNizet Действительно извините ... 3 строки кода после public static void main на самом деле не находятся в моем коде. Я просто забыл исправить это. Эта программа не давала никаких исключений. когда я запустил его, я получил «Соединение установлено» в netbeans. Но значения не были введены в базу данных. – TomJ
Вы выполнили класс Connect, который ничего не делает, кроме соединения с базой данных. Выполните другой класс, который пытается вставить строки в базу данных, и вы получите исключение NullPointerException. –