Mengintegrasikan Spanner dengan Hibernate ORM (dialek GoogleSQL)

Hibernate adalah alat pemetaan relasional objek untuk bahasa pemrograman Java. Framework ini menyediakan framework untuk memetakan model domain berorientasi objek ke database relasional.

Anda dapat mengintegrasikan database dialek GoogleSQL dengan Hibernate menggunakan Dialek Spanner open source (SpannerDialect). Spanner kompatibel dengan Hibernate ORM 6.x. Dialect Spanner menghasilkan pernyataan SQL, DML, dan DDL untuk sebagian besar jenis dan hubungan entitas umum menggunakan anotasi Hibernate dan Java Persistence standar.

Menyiapkan Hibernate

Dalam project Anda, tambahkan dependensi Apache Maven untuk core Hibernate ORM, Spanner Dialect, dan Spanner yang secara resmi mendukung driver JDBC Open Source.

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

  <!-- Hibernate core dependency -->
  <dependency>
    <groupId>org.hibernate.orm</groupId>
    <artifactId>hibernate-core</artifactId>
    <version>6.4.4.Final</version>
  </dependency>
</dependencies>

Konfigurasikan hibernate.cfg.xml untuk menggunakan Dialek Spanner dan Driver JDBC Spanner.

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

Lokasi file kredensial JSON akun layanan harus berada di variabel lingkungan GOOGLE_APPLICATION_CREDENTIALS. Jika tidak, driver akan menggunakan kredensial default yang ditetapkan di aplikasi gcloud Google Cloud CLI.

Menggunakan Hibernate dengan Spanner GoogleSQL

Untuk informasi selengkapnya tentang fitur dan rekomendasi untuk Hibernate, lihat dokumentasi referensi di GitHub.

Langkah selanjutnya