📅  最后修改于: 2020-11-16 06:58:44             🧑  作者: Mango
准备Hibernate映射文档时,会发现将Java数据类型映射为RDBMS数据类型。映射文件中声明和使用的类型不是Java数据类型。它们也不是SQL数据库类型。这些类型称为Hibernate映射类型,可以将其从Java转换为SQL数据类型,反之亦然。
本章列出了所有基本,日期和时间,大对象以及其他各种内置映射类型。
基本类型
Mapping type |
Java type |
ANSI SQL Type |
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’) |
日期和时间类型
Mapping type |
Java type |
ANSI SQL Type |
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 type |
Java type |
ANSI SQL Type |
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相关的类型
Mapping type |
Java type |
ANSI SQL Type |
class |
java.lang.Class |
VARCHAR |
locale |
java.util.Locale |
VARCHAR |
timezone |
java.util.TimeZone |
VARCHAR |
currency |
java.util.Currency |
VARCHAR |