Integrar Spanner con MyBatis y Spring Boot (PostgreSQL)

MyBatis es un framework de persistencia que admite SQL personalizado y asignaciones avanzadas. MyBatis elimina la mayor parte del código JDBC y la configuración manual de los parámetros y la recuperación de los resultados en tu aplicación.

Configurar MyBatis para bases de datos con dialecto PostgreSQL de Spanner

Puedes integrar bases de datos de Spanner con dialecto PostgreSQL con MyBatis y Spring Boot mediante el controlador JDBC de Spanner.

No es necesario usar PGAdapter para esta integración.

Dependencias

En tu proyecto, añade las dependencias de Apache Maven para MyBatis, Spring Boot y el controlador JDBC de Spanner.

<dependencies>
  <!-- MyBatis and Spring Boot -->
  <dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
  </dependency>
  <dependency>
    <groupId>org.mybatis.dynamic-sql</groupId>
    <artifactId>mybatis-dynamic-sql</artifactId>
  </dependency>

  <!-- Spanner JDBC driver -->
  <dependency>
    <groupId>com.google.cloud</groupId>
    <artifactId>google-cloud-spanner-jdbc</artifactId>
  </dependency>
<dependencies>

Configuración de la fuente de datos

Configura application.properties para que use el controlador JDBC de Spanner y se conecte a una base de datos de Spanner con dialecto PostgreSQL.

# This profile uses a Spanner PostgreSQL database.

spanner.project=my-project
spanner.instance=my-instance
spanner.database=mybatis-sample

spring.datasource.driver-class-name=com.google.cloud.spanner.jdbc.JdbcDriver
spring.datasource.url=jdbc:cloudspanner:/projects/${spanner.project}/instances/${spanner.instance}/databases/${spanner.database}

Aplicación de muestra completa

Para probar esta integración con una aplicación de ejemplo, consulta Aplicación de ejemplo de Spring Data MyBatis con Spanner PostgreSQL.

Siguientes pasos