HikariCP подготовил кеш выписок

Я искал HikariCP для использования его в одном из моих проектов. В разделе кэша операторов на странице проекта в github говорится, что он не поддерживает подготовленный кэш операторов на уровне пула соединений.

Но раздел инициализации имеет следующий фрагмент кода

HikariConfig config = new HikariConfig();
config.setJdbcUrl("jdbc:mysql://localhost:3306/simpsons");
config.setUsername("bart");
config.setPassword("51mp50n");
config.addDataSourceProperty("cachePrepStmts", "true");
config.addDataSourceProperty("prepStmtCacheSize", "250");
config.addDataSourceProperty("prepStmtCacheSqlLimit", "2048");

HikariDataSource ds = new HikariDataSource(config);

и он устанавливает подготовленный конфиг кеша операторов. Это настраивается для пула соединений или драйвера ниже? Также, какие свойства поддерживаются методом addDataSourceProperty?

1 ответ

Источник данных настроен и используется MySql в вашем случае.

По сути, вы можете отправить соответствующие свойства для вашей реализации.

Например, для оракула вы можете отправить

dataSource.addDataSourceProperty("oracle.jdbc.defaultNChar", "true");

И это свойство будет использоваться в реализации Oracle

HikariCP сохраните его в свойствах и скопируйте в свойства драйвера и используйте при подключении:

for (Entry<Object, Object> entry : properties.entrySet()) {
         driverProperties.setProperty(entry.getKey().toString(), entry.getValue().toString());
      }
....
driver.connect(jdbcUrl, driverProperties);
Другие вопросы по тегам