扫码一下
查看教程更方便
当我们准备一个 hibernate 映射文档时,会发现我们将 java 数据类型映射到 rdbms 数据类型。 映射文件中声明和使用的类型不是 java 数据类型; 它们也不是 sql 数据库类型。 这些类型称为 hibernate 映射类型,可以从 java 转换为 sql 数据类型,反之亦然。
本章列出了所有基本的、日期和时间、大对象以及各种其他内置映射类型。
| 映射类型 | java 类型 | ansi sql 类型 |
|---|---|---|
| integer | int or java.lang.integer | integer |
| long | long or java.lang.long | bigint |
| short | short or java.lang.short | smallint |
| float | float or java.lang.float | float |
| double | double or java.lang.double | double |
| big_decimal | java.math.bigdecimal | numeric |
| character | java.lang.string | char(1) |
| string | java.lang.string | varchar |
| byte | byte or java.lang.byte | tinyint |
| boolean | boolean or java.lang.boolean | bit |
| yes/no | boolean or java.lang.boolean | char(1) ('y' or 'n') |
| true/false | boolean or java.lang.boolean | char(1) ('t' or 'f') |
| 映射类型 | java 类型 | ansi sql 类型 |
|---|---|---|
| date | java.util.date or java.sql.date | date |
| time | java.util.date or java.sql.time | time |
| timestamp | java.util.date or java.sql.timestamp | timestamp |
| calendar | java.util.calendar | timestamp |
| calendar_date | java.util.calendar | date |
| 映射类型 | java 类型 | ansi sql 类型 |
|---|---|---|
| binary | byte[] | varbinary (或者 blob) |
| text | java.lang.string | clob |
| serializable | 任何实现 java.io.serializable 接口的类 | varbinary (或者 blob) |
| clob | java.sql.clob | clob |
| blob | java.sql.blob | blob |
| 映射类型 | java 类型 | ansi sql 类型 |
|---|---|---|
| class | java.lang.class | varchar |
| locale | java.util.locale | varchar |
| timezone | java.util.timezone | varchar |
| currency | java.util.currency | varchar |