将Spring Data JPA与GCP扳手集成

问题描述 投票:0回答:2

我正在尝试将现有的Spring Boot应用程序从使用Postgres迁移到GCP Spanner。

我正在使用以下Cloud Spanner JDBC驱动程序和Hibernate方言:

<dependency>
    <groupId>com.google.cloud</groupId>
    <artifactId>google-cloud-spanner-hibernate-dialect</artifactId>
    <version>0.1.0</version>
</dependency>
<dependency>
    <groupId>com.google.cloud</groupId>
    <artifactId>google-cloud-spanner-jdbc</artifactId>
    <version>1.7.0</version>
</dependency>

还配置了以下属性:

spring.datasource.url=jdbc:cloudspanner:/projects/YOUR_PROJECT_ID/instances/demo/databases/demo
spring.datasource.driver-class-name=com.google.cloud.spanner.jdbc.JdbcDriver
spring.jpa.database-platform=com.google.cloud.spanner.hibernate.SpannerDialect

但是,当运行该应用程序时,它挂起并试图获得池连接:

o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 2729 ms
com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Starting...
com.zaxxer.hikari.pool.PoolBase          : HikariPool-1 - Driver does not support get/set network timeout for connections. (Network timeout is not supported)

HikariCP是否支持GCP扳手?

hibernate spring-boot jdbc hikaricp google-cloud-spanner
2个回答
1
投票

它应该可以直接使用,在您提供的设置中我看不到任何直接错误的信息。因此,我的猜测是,这里还有其他一些导致问题的原因(依赖性,其他设置等)。您使用的是Hibernate方言和JDBC驱动程序的较旧版本,但这不是问题。

一个可能的问题是您的系统未使用默认的Google Cloud凭据进行设置。我注意到您的JDBC URL不包含任何凭据,这意味着它将回退到环境的默认值。如果找不到它,我会期望一个错误,但这可能是引起问题的原因。


0
投票

唯一的official JDBC是:

© www.soinside.com 2019 - 2024. All rights reserved.