Hallo Zusammen
Ich habe über JDBC eine Verbindung zu einer Datenbank aufgebaut und schreibe dort laufend Sachen hinein und lese diese aus. Das Problem ist nun aber, dass ich nach einer gewissen Zeit zu viele Verbindungen habe. Meine Idee war dann, dass ich die "Connection conn" mit conn.close wieder schliesse, nachdem ich die Dateien der Datenbank hinzugefügt habe. Jedoch erhalte ich dann beim nächsten senden den Fehler: "No operations allowed after Connection closing".
Hat Jemand von euch eine Idee, wie ich dies lösen kann, denn einfach die Anzahl Verbindungen erhöhen ist ja auch keine Lösung.
Hier noch mein Code:
Gruss
Samuel
Ich habe über JDBC eine Verbindung zu einer Datenbank aufgebaut und schreibe dort laufend Sachen hinein und lese diese aus. Das Problem ist nun aber, dass ich nach einer gewissen Zeit zu viele Verbindungen habe. Meine Idee war dann, dass ich die "Connection conn" mit conn.close wieder schliesse, nachdem ich die Dateien der Datenbank hinzugefügt habe. Jedoch erhalte ich dann beim nächsten senden den Fehler: "No operations allowed after Connection closing".
Hat Jemand von euch eine Idee, wie ich dies lösen kann, denn einfach die Anzahl Verbindungen erhöhen ist ja auch keine Lösung.
Hier noch mein Code:
Code:
public static Connection dbConnector ()
{
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection conn=DriverManager.getConnection("jdbc:mysql://169.254.230.146/mealorder", "Benutzer", "Passwort");
// JOptionPane.showMessageDialog(null, "Connection sucessfull");
return conn;
} catch (Exception e){
//JOptionPane.showMessageDialog(null, e);
return null;
}
}
Code:
public void start_insert (){
conn = sql_connection.dbConnector();
if (conn==null){
JOptionPane.showMessageDialog(null, "Verbindung zum Server nicht möglich! Bitte Server und WLan Verbindung überprüfen! ");}
else{
send_request();
preparation_insert();
}}
Code:
public void insert_product_essen (int product_essen, int product_anzahl_e) {
try {
// Class.forName("com.mysql.jdbc.Driver").newInstance();
// Connection conn=DriverManager.getConnection("jdbc:mysql://192.168.43.13/mealorder", "'"+Home.user_database+"'", "Xjv58552");
String query_essen = "Insert into Bestellungen_Essen_SNF (`Bestellnummer`, `Tisch`, `Produkt_E`, `Anzahl`, `ID`) values (?,?,?,?,?)";
PreparedStatement pst_insert_essen=(PreparedStatement) conn.prepareStatement(query_essen);
pst_insert_essen.setInt(1, Home.ordernummer_essen);
pst_insert_essen.setString(2, Home.tisch);
pst_insert_essen.setInt(3, product_essen);
pst_insert_essen.setInt(4, product_anzahl_e);
pst_insert_essen.setInt(5, Home.ID);
pst_insert_essen.execute();
//JOptionPane.showMessageDialog(null, "Bestellung abgeschickt");
pst_insert_essen.close();
}
catch (Exception e){
JOptionPane.showMessageDialog(null, "Fehler Hinzufügen Essen zu Datenbank");
}
}
Gruss
Samuel