Mengintegrasikan Spanner dengan Hibernate ORM (dialek GoogleSQL)

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

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

Siapkan Hibernasi

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

<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 Spanner Dialect dan Spanner JDBC Driver.

<!-- 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 dalam variabel lingkungan GOOGLE_APPLICATION_CREDENTIALS. Jika tidak, pengemudi akan menggunakan kredensial default yang disetel di aplikasi gcloud Google Cloud CLI.

Menggunakan Hibernate dengan Spanner GoogleSQL

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

Langkah selanjutnya