Integrar o Spanner com MyBatis e Spring Boot (PostgreSQL)

O MyBatis é um framework de persistência com suporte a SQL personalizado e mapeamentos avançados. O MyBatis elimina a maior parte do código JDBC e a configuração manual de parâmetros e a recuperação de resultados no seu aplicativo.

Configurar o MyBatis para bancos de dados de dialeto PostgreSQL do Spanner

É possível integrar os bancos de dados de dialeto PostgreSQL do Spanner ao MyBatis e o Spring Boot usando o driver JDBC do Spanner.

Não é necessário usar PGAdapter para essa integração.

Dependências

No projeto, adicione as dependências do Apache Maven para MyBatis, Spring Boot e o driver JDBC do 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>

Configuração da fonte de dados

Configure application.properties para usar o driver JDBC do Spanner e para se conectar ao banco de dados de dialeto PostgreSQL do Spanner.

# 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}

Aplicativo de amostra completo

Para testar essa integração com um aplicativo de exemplo, consulte Exemplo de aplicativo do Spring Data MyBatis com o Spanner PostgreSQL.

A seguir