שילוב של Spanner עם Hibernate ORM (ניב PostgreSQL)

‫Hibernate הוא כלי למיפוי יחסי בין אובייקטים לשפת התכנות Java. הוא מספק מסגרת למיפוי של מודל דומיין מונחה-עצמים למסד נתונים רלציוני.

אפשר לשלב מסדי נתונים של ניב PostgreSQL עם Hibernate באמצעות מנהל ההתקן של Spanner JDBC בקוד פתוח. ‫Hibernate ORM 7.4 נתמך במסדי נתונים של ניב PostgreSQL.

הגדרה של Hibernate עם PostgreSQL

ב Google Cloud פרויקט, מוסיפים יחסי תלות של Apache Maven לליבת Hibernate ORM ולדרייבר Spanner JDBC.

<!-- 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>

הגדרת מאפייני Hibernate

מגדירים את hibernate.properties כך שישתמש ב-SpannerPostgreSQLDialect, במנהל ההתקן Spanner JDBC ובמאפייני החיבור הנדרשים בכתובת ה-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

שימוש במצב תנומה

מידע נוסף על התכונות וההמלצות לשילוב של Hibernate עם מסדי נתונים של ניב PostgreSQL זמין במאמרי העזרה ב-GitHub.

המאמרים הבאים