Документация библиотеки JDBI
описывает различные варианты использования дескрипторов и SQL объектов, но, похоже, отсутствует сценарий использования, который я не могу себе представить, задает c для моего текущего кода:
I хотите открыть соединение с базой данных, а затем просто держать это соединение открытым до конца времени выполнения моего приложения (которое измеряется в днях).
Я не хочу нести затраты на производительность при необходимости повторного открытия соединение, когда мне это нужно, поэтому я не хочу вручную вызывать withHandle
/ withExtension
или использовать функциональность onDemand
.
Я мог бы просто открыть дескриптор и сохранить его (я Я не обеспокоен потенциальной утечкой ресурсов, так как дескриптор будет храниться в управляемом CDI Singleton
), но что тогда произойдет, если база данных или соединение с ней исчезнет?
Я представляю в некоторых случаях После этого мне придется иметь дело с обновлением дескриптора после отключения базы данных, так как подобные вещи обязательно произойдут и не должны требовать моего приложения. на перезапуск, но где будет подходящая точка для обработки этого?