位置:首頁 > Java技術 > hibernate > Hibernate映射類型

Hibernate映射類型

當編寫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