java-класс для проверки соединений при загрузке spring с использованием HikariCP

#spring-boot #hikaricp

#spring-boot #hikaricp

Вопрос:

В Jboss есть механизм, с помощью которого я могу выполнить класс проверки соединений (OracleValidConnectionChecker) до того, как соединение будет извлечено из пула соединений. Это было бы полезно при вызове хранимой процедуры перед каждым вызовом БД.(Это необходимо для настройки контекста безопасности на уровне DB для обеспечения безопасности уровня Oracle)

Есть ли какой-либо аналогичный механизм в spring boot (tomcat) с использованием HikariCP? Я знаю, что существует конфигурация SQL-запроса для проверки соединений (spring.datasource.hikari.connection-test-query). Но я ищу способ выполнить процедуру с входными параметрами.

Комментарии:

1. github.com/brettwooldridge/HikariCP/issues/1346

Ответ №1:

Согласно https://github.com/brettwooldridge/HikariCP#configuration-knobs-baby Я считаю connectionInitSql , что в вашем случае было бы разумнее. connectionTestQuery предназначен для «устаревших» драйверов, которые не поддерживают JDBC4 Connection.isValid() .

Возможно, вы сможете создать свой собственный запрос хранимой процедуры и передать его в это свойство, однако будьте осторожны, вы не сможете воспользоваться защитой, которую обычно предоставляют подготовленные инструкции, например. внедрение sql.

Комментарии:

1. Нет. Это то, что я упомянул в своем вопросе. Я знаю, что Hikari предоставляет способ выполнения запроса. Но мне нужна хранимая процедура, которой я также могу передавать параметры.