使用开源 R2DBC 驱动程序

R2DBC 根据响应式流指定对关系型数据库的非阻塞访问权限。您的应用可以通过 Spanner R2DBC 驱动程序,利用与 Spanner 的反应式数据库连接。

添加依赖项

Spring Data 用户应使用 Spanner 的 Spring Data R2DBC 方言;其他所有用户应仅引入 Spanner R2DBC 驱动程序。

使用 Spanner R2DBC 驱动程序

如需仅将 Spanner R2DBC 驱动程序添加到您的应用,请添加以下依赖项:

<dependency>
  <groupId>com.google.cloud</groupId>
  <artifactId>cloud-spanner-r2dbc</artifactId>
  <version>1.3.0</version>
</dependency>

如需了解详情,请参阅 Spanner R2DBC 驱动程序 GitHub 代码库示例代码

为 Spanner 使用 Spring Data R2DBC 方言

对于 Spring Framework 的用户,Spring Data 提供了熟悉的抽象来简化与常见数据库操作的互动。

如需将 Spring Data R2DBC 功能与 Spanner 搭配使用,请将以下依赖项添加到您的项目中。驱动程序是方言的传递依赖项。

<dependency>
  <groupId>com.google.cloud</groupId>
  <artifactId>cloud-spanner-spring-data-r2dbc</artifactId>
  <version>1.2.2</version>
</dependency>

如需了解如何使用其模板和代码库,请参阅 Spring Data R2DBC 参考文档。如需查看系统为您自动配置了哪些对象,请参阅 Spring Boot 参考文档

如需了解详情,请参阅 Spanner Spring Data R2DBC GitHub 代码库

Spring Boot 配置

无论您使用哪个 R2DBC 依赖项,如果您的应用基于 Spring Boot,框架都将尝试自动配置并提供一个 Connection Factory。

提供 spring.r2dbc.url 属性,让自动配置处理 R2DBC Connection Factory 配置。格式如以下示例 application.properties 条目所示:

spring.r2dbc.url=\
r2dbc:cloudspanner://spanner.googleapis.com:443/projects/${project}/instances/${instance}/databases/${database}

后续步骤