Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Java / MySQL - Wie greife ich auf eine Verbindung von einer anderen Klasse zu?

Das solltest du nicht tun. Die Verbindung hat eine begrenzte Lebensdauer, deren Länge von Ihrer Anwendung nicht kontrolliert werden kann. Wenn die DB entscheidet, dass die Verbindung zu lange geöffnet war, wird sie die Verbindung schließen und Sie erhalten connection reset oder connection timed out Ausnahmen. Dies dauert in der Regel etwa 30 Minuten, kann aber auch weniger sein.

Die normale JDBC-Praxis besteht darin, Connection zu erwerben und zu schließen , Statement und ResultSet im kürzest möglichen Umfang, d. h. im selben Methodenblock, in dem Sie die Abfrage ausführen.

Wenn der Grund dafür, die Verbindung so lange offen zu halten, die Leistung ist, dann sollten Sie Verbindungspooling in Betracht ziehen, zum Beispiel c3p0 (Nutzungsanleitung hier ).