Mysql
 sql >> Database >  >> RDS >> Mysql

Java / MySQL - Come accedere alla connessione da un'altra classe?

Non dovresti farlo. La connessione ha una durata limitata la cui lunghezza è fuori controllo dall'applicazione. Quando il DB decide che la connessione è stata aperta per troppo tempo, chiuderà la connessione e otterrai connection reset o connection timed out eccezioni. Di solito è di circa 30 minuti, ma può anche essere inferiore.

La normale pratica JDBC è acquisire e chiudere Connection , Statement e ResultSet nell'ambito più breve possibile, ovvero nello stesso blocco di metodo in cui si esegue la query.

Se il motivo per mantenere la connessione così a lungo aperta è dovuto alle prestazioni, dovresti considerare il pool di connessioni, ad esempio c3p0 (guida all'uso qui ).