De verbinding is mislukt, mogelijk als gevolg van een inactieve time-out van de firewall, enz. Als uw JDBC-stuurprogramma niet is geconfigureerd om opnieuw verbinding te maken bij een fout, zal deze fout niet verdwijnen tenzij u een nieuwe verbinding opent.
Als u een databaseverbindingspool gebruikt (u bent gebruiken, toch?), dan wil je waarschijnlijk de verbindingscontrolefuncties inschakelen, zoals het geven van een vraag om te controleren of de verbinding werkt voordat je deze teruggeeft aan de applicatie. In Apache commons-dbcp heet dit de validationQuery
en is vaak ingesteld op iets eenvoudigs zoals SELECT 1
.
Aangezien u MySQL gebruikt, moet u een Connector/J-specifieke "ping"-query gebruiken die lichter is dan het daadwerkelijk uitgeven van een echte SQL-query en uw validatiequery instellen op /* ping */ SELECT 1
(het ping-gedeelte nodig om precies te zijn
).