O Hibernate é uma ferramenta de mapeamento objeto-relacional para a linguagem de programação Java. Ele fornece um framework para mapear um modelo de domínio orientado a objetos para um banco de dados relacional.
É possível integrar bancos de dados de dialeto PostgreSQL ao Hibernate usando o driver JDBC de código aberto do Spanner. O Hibernate ORM 7.4 é compatível com bancos de dados de dialeto PostgreSQL.
Configurar o Hibernate com o PostgreSQL
No seu Google Cloud projeto, adicione as dependências do Apache Maven para o núcleo do Hibernate ORM e o driver JDBC do Spanner.
<!-- Hibernate core dependency -->
<dependency>
<groupId>org.hibernate.orm</groupId>
<artifactId>hibernate-core</artifactId>
<version>7.4.0.Final</version>
</dependency>
<!-- Spanner JDBC Driver dependency -->
<dependency>
<groupId>com.google.cloud</groupId>
<artifactId>google-cloud-spanner-jdbc</artifactId>
<version>2.40.0</version>
</dependency>
Configurar as propriedades do Hibernate
Configure hibernate.properties para usar o SpannerPostgreSQLDialect, o driver JDBC do Spanner e as propriedades de conexão necessárias no URL.
hibernate.dialect=org.hibernate.dialect.SpannerPostgreSQLDialect
hibernate.connection.driver_class=com.google.cloud.spanner.jdbc.JdbcDriver
hibernate.connection.url=jdbc:cloudspanner:/projects/PROJECT_ID/instances/INSTANCE_ID/databases/DATABASE_ID?defaultsequencekind=bit_reversed_positive
hibernate.show_sql=true
hibernate.format_sql=true
# hibernate.hbm2ddl.auto validate
hibernate.hbm2ddl.auto=update
Usar o Hibernate
Para mais informações sobre os recursos e as recomendações para integrar o Hibernate a bancos de dados de dialeto PostgreSQL, consulte a documentação de referência no GitHub.
A seguir
- Saiba mais sobre o driver JDBC do Spanner.
- Saiba mais sobre o Hibernate ORM.
- Para mais informações sobre as opções de conexão do driver JDBC do Spanner, consulte Opções de conexão JDBC no repositório do GitHub do Google Cloud Java.
- Saiba como integrar o Spanner ao Hibernate ORM (dialeto GoogleSQL).
- Confira uma visão geral dos drivers e ORMs compatíveis com o Spanner.