Нет. Соединение "мертвое". Создать новое соединение.
Хорошим подходом является использование пула соединений , который проверит, все ли в порядке соединение перед тем, как передать его вам, и автоматически создаст новое соединение, если необходимо.
Существует несколько пулов соединений с открытым исходным кодом. Я использовал Apache JDCP , и он работал для меня.
Отредактировано:
Учитывая, что вы хотите подождать, пока база данных не восстановится, если она не работает (интересная идея), вы можете реализовать собственную версию getConnection()
, которая «ждет некоторое время и пытается снова», если база данных не отвечает.
p.s. Мне нравится эта идея!