Nie powinieneś tego robić. Połączenie ma ograniczony czas życia, którego długość jest poza kontrolą aplikacji. Kiedy DB zdecyduje, że połączenie jest otwarte zbyt długo, zamknie połączenie i otrzymasz connection reset
lub connection timed out
wyjątki. Zwykle trwa to około 30 minut, ale może też być krótsze.
Normalną praktyką JDBC jest uzyskanie i zamknięcie Connection
, Statement
i ResultSet
w najkrótszym możliwym zakresie, tj. w tym samym bloku metod, w którym wykonujesz zapytanie.
Jeśli powodem utrzymywania tak otwartego połączenia jest wydajność, powinieneś rozważyć łączenie połączeń, na przykład c3p0 (przewodnik użytkowania tutaj ).