发布于 2015-07-28 15:14:17 | 310 次阅读 | 评论: 0 | 来源: 网络整理
当编写Hibernate映射文件,映射的Java数据类型到关系型数据库的数据类型。声明及在映射文件中使用的类型不是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') |
Date 和time 类型:
| Mapping 类型 |
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 |
二进制大对象类型:
| Mapping 类型 |
Java 类型 |
ANSI SQL 类型 |
| binary |
byte[] |
VARBINARY (or BLOB) |
| text |
java.lang.String |
CLOB |
| serializable |
any Java class that implements java.io.Serializable |
VARBINARY (or BLOB) |
| clob |
java.sql.Clob |
CLOB |
| blob |
java.sql.Blob |
BLOB |
JDK-related 类型:
| Mapping 类型 |
Java 类型 |
ANSI SQL 类型 |
| class |
java.lang.Class |
VARCHAR |
| locale |
java.util.Locale |
VARCHAR |
| timezone |
java.util.TimeZone |
VARCHAR |
| currency |
java.util.Currency |
VARCHAR |