Hibernate ORM 是适用于 Java 编程语言的对象关系映射 (ORM) 工具。它提供了一个框架,用于将面向对象的网域模型映射到关系型数据库。您可以使用开源 Spanner 方言 (SpannerDialect) 将 GoogleSQL 方言数据库与 Hibernate 集成。
本文档介绍了如何配置 Hibernate 以连接到 Spanner Omni。Hibernate 与 Spanner Omni 的集成方式与它与 Spanner 的集成方式相同。Spanner 与 Hibernate ORM 6.x 兼容。Spanner 方言使用标准 Hibernate 和 Java Persistence 注解为大多数常见实体类型和关系生成 SQL、DML 和 DDL 语句。
将 Hibernate 与 Spanner Omni 搭配使用,可让您利用现有的 Hibernate 经验与数据库进行交互。如需了解详情,请参阅 Spanner 文档中的将 Spanner 与 Hibernate ORM 集成(Spanner 方言)。
前提条件
如需将 Hibernate 与 Spanner Omni 搭配使用,请在项目中添加以下 Maven 依赖项:
Spanner Hibernate 方言:将以下内容添加到
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 驱动程序:将以下内容添加到
pom.xml文件。使用版本 2.41.0 或更高版本。<dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-spanner-jdbc</artifactId> <version>2.41.0</version> </dependency>
配置 Hibernate
使用标准 Hibernate 方言惯例,在 hibernate.properties 文件中配置 SpannerDialect 和 Spanner 驱动程序类:
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 数据库的 ID,例如test-db。
更新 hibernate.connection.url 以使用您的安全配置建立 Spanner Omni 连接。如需了解详情,请参阅建立 Spanner Omni 连接。
对于加密连接类型(TLS、带凭据的 TLS 和 mTLS),请将 CA 证书添加到 Java 信任库。如需了解详情,请参阅配置 Java 信任库。