【发布时间】:2021-04-21 10:30:15
【问题描述】:
我正在尝试弄清楚如何使用 PGProperty 属性来配置 hikari 数据源。
这很好用:
final String jdbcUrl = String.format(
"jdbc:postgresql://%s:%s/%s?ApplicationName=%s",
configuration.getDatabaseHost(),
configuration.getDatabasePort(),
configuration.getDatabaseName(),
configuration.getDatabaseAppName());
hikariDataSource.setJdbcUrl(jdbcUrl);
hikariDataSource.setUsername(configuration.getDatabaseUsername());
hikariDataSource.setPassword(configuration.getDatabasePassword());
hikariDataSource.setMaximumPoolSize(configuration.getDatabaseMaximumPoolSize());
但我希望能够使用 PGProperty 来避免像上面那样手动构建 JDBC url。当我尝试这个时:
hikariDataSource.setDataSourceClassName("org.postgresql.ds.PGSimpleDataSource");
hikariDataSource.addDataSourceProperty(PGProperty.PG_HOST.getName(), configuration.getDatabaseHost());
hikariDataSource.addDataSourceProperty(PGProperty.PG_PORT.getName(), configuration.getDatabasePort());
hikariDataSource.addDataSourceProperty(PGProperty.PG_DBNAME.getName(), configuration.getDatabaseName());
hikariDataSource.addDataSourceProperty(PGProperty.APPLICATION_NAME.getName(), configuration.getDatabaseAppName());
hikariDataSource.addDataSourceProperty(PGProperty.USER.getName(), configuration.getDatabaseUsername());
hikariDataSource.addDataSourceProperty(PGProperty.PASSWORD.getName(), configuration.getDatabasePassword());
我收到此错误:
Property PGHOST does not exist on target class org.postgresql.ds.PGSimpleDataSource
https://jdbc.postgresql.org/documentation/publicapi/org/postgresql/PGProperty.html
【问题讨论】:
标签: java postgresql hikaricp jdbi