5

每个 JPA-Provider(至少 hibernate、eclipselink 和 openjpa)都提供了基于 jpa 实体类创建 ddl-schema 的可能性。但是每个数据库管理系统都有自己的数据类型。

那么 jpa-providers 如何决定选择哪种 sql 数据类型。(我认为这将是特定于提供商的)。是否有类似映射String->varchar(xx), boolean->tinyint之类的。但是,每个数据库都必须存在这种映射,对吗?任何人都可以把我放在正确的方向吗?我在休眠源代码中进行了搜索,但没有找到正确的代码片段。

谢谢!

4

3 回答 3

1

那么每个数据库都必须存在这个映射,对吗?

你说的对。在 DB 连接中使用的方言中也指定了相同的内容。

对于我搜索过的任何内容,此信息都封装在您使用的数据库的方言驱动程序中,并且必须包含java types -> db types.

在这里,您可以看到Constructor中的映射。

于 2012-10-18T09:09:59.733 回答
0

请参阅方言类及其实现。

干杯,

于 2012-10-18T09:00:32.140 回答
0

对于每个 DBMS,hibernate 都维护着方言。在 hibernateX.jar 中可用。

于 2012-10-18T09:01:50.330 回答