Hibernate ORM הוא כלי למיפוי יחסי בין אובייקטים (ORM) לשפת התכנות Java. הוא מספק מסגרת למיפוי מודל דומיין מונחה-עצמים למסד נתונים רלציוני. אפשר לשלב מסדי נתונים של ניב GoogleSQL עם Hibernate באמצעות ניב Spanner (SpannerDialect) בקוד פתוח.
במאמר הזה מוסבר איך להגדיר את Hibernate כדי להתחבר ל-Spanner Omni. Hibernate משולב עם Spanner Omni באותו אופן שבו הוא משולב עם Spanner. Spanner תואם ל-Hibernate ORM בגרסה 6.x. ניב Spanner יוצר הצהרות SQL, DML ו-DDL עבור רוב סוגי הישויות והקשרים הנפוצים באמצעות הערות סטנדרטיות של Hibernate ו-Java Persistence.
שימוש ב-Hibernate עם Spanner Omni מאפשר לכם להשתמש בניסיון הקיים שלכם עם Hibernate כדי ליצור אינטראקציה עם מסדי הנתונים שלכם. מידע נוסף מופיע במאמר שילוב של Spanner עם Hibernate ORM (ניב Spanner) במאמרי העזרה של Spanner.
דרישות מוקדמות
כדי להשתמש ב-Hibernate עם Spanner Omni, צריך לכלול את יחסי התלות הבאים של Maven בפרויקט:
Spanner Hibernate dialect: מוסיפים את השורה הבאה לקובץ
pom.xml. משתמשים בגרסה 4.3.0 ואילך.<dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-spanner-hibernate-dialect</artifactId> <version>4.3.0</version> </dependency>Spanner JDBC driver: מוסיפים את השורות הבאות לקובץ
pom.xml. משתמשים בגרסה 2.41.0 ואילך.<dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-spanner-jdbc</artifactId> <version>2.41.0</version> </dependency>
הגדרת מצב תנומה
מגדירים את המחלקה של מנהל ההתקן SpannerDialect ואת Spanner בקובץ hibernate.properties באמצעות מוסכמות סטנדרטיות של ניב Hibernate:
hibernate.dialect=com.google.cloud.spanner.hibernate.SpannerDialect
hibernate.connection.driver_class=com.google.cloud.spanner.jdbc.JdbcDriver
hibernate.connection.url=jdbc:spanner://ENDPOINT/databases/DATABASE_ID?type=omni
מחליפים את מה שכתוב בשדות הבאים:
ENDPOINT: נקודת הקצה של מופע Spanner Omni, לדוגמה,localhost:15000.
DATABASE_ID: המזהה של מסד הנתונים של Spanner Omni, לדוגמה,test-db.
מעדכנים את hibernate.connection.url כדי ליצור חיבור Spanner Omni באמצעות הגדרות האבטחה. מידע נוסף זמין במאמר יצירת חיבור Spanner Omni.
לסוגי חיבורים מוצפנים (TLS, TLS עם פרטי כניסה ו-mTLS), מוסיפים את אישור ה-CA למאגר האישורים המהימנים של Java. מידע נוסף זמין במאמר בנושא הגדרת מאגר האישורים המהימנים של Java.