Integre o Spanner com o Hibernate ORM (dialeto GoogleSQL)

O Hibernate é uma ferramenta de mapeamento objeto-relacional para a linguagem de programação Java. Fornece uma framework para mapear um modelo de domínio orientado a objetos para uma base de dados relacional.

Pode integrar bases de dados com dialeto GoogleSQL com o Hibernate através do dialeto do Spanner de código aberto (SpannerDialect). O Spanner é compatível com o Hibernate ORM 6.x. O dialeto do Spanner produz declarações SQL, DML e DDL para os tipos de entidades e relações mais comuns através de anotações padrão do Hibernate e Java Persistence.

Configure a hibernação

No seu projeto, adicione dependências do Apache Maven para o Hibernate ORM core, o Spanner Dialect e o controlador JDBC de código aberto suportado oficialmente pelo Spanner.


  
  
    com.google.cloud
    google-cloud-spanner-jdbc
  

  
  
    org.hibernate.orm
    hibernate-core
    6.4.4.Final
  

Configure o hibernate.cfg.xml para usar o dialeto do Spanner e o controlador JDBC do Spanner.


 name="hibernate.dialect">org.hibernate.dialect.SpannerDialect
 name="hibernate.connection.driver_class">com.google.cloud.spanner.jdbc.JdbcDriver
 name="hibernate.connection.url">jdbc:cloudspanner:/projects/{YOUR_PROJECT_ID}/instances/{YOUR_INSTANCE_ID}/databases/{YOUR_DATABASE_ID}

A localização do ficheiro de credenciais JSON da conta de serviço deve estar na variável de ambiente GOOGLE_APPLICATION_CREDENTIALS. Caso contrário, o controlador usa as credenciais predefinidas definidas na aplicação gcloud Google Cloud CLI.

Use o Hibernate com o GoogleSQL do Spanner

Para mais informações sobre as funcionalidades e as recomendações para o Hibernate, consulte a documentação de referência no GitHub.

O que se segue?