Usa el controlador R2DBC de código abierto

R2DBC es una especificación para el acceso sin bloqueo a bases de datos relacionales, que se basa Transmisiones Reactivas. Tu aplicación puede usar la conectividad reactiva de la base de datos con Spanner con el controlador R2DBC de Spanner

Agrega dependencias

Los usuarios de Spring Data deberían usar el dialecto R2DBC de Spring Data para Spanner; todos los demás usuarios deben incorporar Solo el controlador R2DBC de Spanner.

Usa el controlador R2DBC de Spanner

Para agregar solo el controlador R2DBC de Spanner a tu aplicación, agrega el siguiente dependencia:

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

Para obtener más información, consulta el repositorio de GitHub del controlador R2DBC de Spanner y el código de ejemplo.

Usa el dialecto R2DBC de Spring Data para Spanner

Para los usuarios de Framework de Spring, Spring Data proporciona abstracciones conocidas a fin de simplificar la interacción con operaciones comunes de la base de datos.

Para usar las funciones de Spring Data R2DBC con Spanner, agrega la siguiente dependencia a tu proyecto. El es una dependencia transitiva del dialecto.

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

Para aprender a usar su plantilla y repositorios, consulta la referencia de R2DBC de Spring Data. Para ver qué objetos se configuran automáticamente para ti, consulta la referencia de Spring Boot.

Para obtener más información, consulta el repositorio de GitHub de Spanner Spring Data R2DBC.

Configuración de Spring Boot

Independientemente de la dependencia de R2DBC que uses, si tu aplicación se basa en Spring Boot, el framework intentará configurar y proporcionar automáticamente una fábrica de conexiones.

Proporciona una propiedad spring.r2dbc.url para permitir que la configuración automática se encargue de lo siguiente: Configuración de fábrica de la conexión R2DBC. El formato se muestra en la siguiente entrada de application.properties de ejemplo:

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

¿Qué sigue?