Vilken anslutningspool använder du? De flesta tillåter att ett hjärtslagskommando exekveras med jämna mellanrum för att förhindra att anslutningar går på tomgång.
EDIT:Tittar på DBCP-konfigurationssidan
, jag tycker att du ska ställa in en lämplig (billig) validationQuery
. Du kan sedan antingen be DBCP att testa detta när du potentiellt avvisar lediga anslutningar (testWhileIdle
) eller be den att testa precis innan anslutningen återställs (testOnBorrow
). Den första skulle (förhoppningsvis!) hålla dina lediga anslutningar vid liv; den andra skulle inte, men skulle inte returnera trasiga anslutningar (dvs om skulle skapa en ny om det behövs).