fix: 兼容非HikariDataSource数据源

This commit is contained in:
xiongxiaoyang 2025-03-19 08:00:50 +08:00
parent 9d8709ed2d
commit ab166a392a

View File

@ -39,15 +39,17 @@ public class NovelApplication {
log.info("{}:{}", k, v.getClass().getName());
log.info("缓存:{}", v.getCacheNames());
});
// 提前创建连接池而不是在第一次访问数据库时才创建提高第一次访问接口的速度
log.info("创建连接池...");
try (Connection connection = dataSource.getConnection()) {
HikariDataSource hikariDataSource = (HikariDataSource) dataSource;
log.info("最小空闲连接数:{}", hikariDataSource.getMinimumIdle());
log.info("最大连接数:{}", hikariDataSource.getMaximumPoolSize());
log.info("创建连接池完成.");
log.info("数据库:{}", connection.getMetaData().getDatabaseProductName());
log.info("数据库版本:{}", connection.getMetaData().getDatabaseProductVersion());
if(dataSource instanceof HikariDataSource) {
// 如果使用的是HikariDataSource需要提前创建连接池而不是在第一次访问数据库时才创建提高第一次访问接口的速度
log.info("创建连接池...");
try (Connection connection = dataSource.getConnection()) {
HikariDataSource hikariDataSource = (HikariDataSource) dataSource;
log.info("最小空闲连接数:{}", hikariDataSource.getMinimumIdle());
log.info("最大连接数:{}", hikariDataSource.getMaximumPoolSize());
log.info("创建连接池完成.");
log.info("数据库:{}", connection.getMetaData().getDatabaseProductName());
log.info("数据库版本:{}", connection.getMetaData().getDatabaseProductVersion());
}
}
};
}