Integre o Spanner com o MyBatis e o Spring Boot (PostgreSQL)

O MyBatis é uma estrutura de persistência com suporte para SQL personalizado e mapeamentos avançados. O MyBatis elimina a maior parte do código JDBC e a definição manual de parâmetros e a obtenção de resultados na sua aplicação.

Configure o MyBatis para bases de dados com dialeto PostgreSQL do Spanner

Pode integrar bases de dados com dialeto PostgreSQL do Spanner com o MyBatis e o Spring Boot através do controlador JDBC do Spanner.

Não precisa de usar o PGAdapter para esta integração.

Dependências

No seu projeto, adicione dependências do Apache Maven para o MyBatis, o Spring Boot e o controlador 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 origem de dados

Configure o application.properties para usar o controlador JDBC do Spanner e para se ligar a uma base de dados do 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}

Aplicação de amostra completa

Para experimentar esta integração com uma aplicação de exemplo, consulte o artigo Aplicação de exemplo do Spring Data MyBatis com o Spanner PostgreSQL.

O que se segue?