Khi bạn chuẩn bị tạo tài liệu mapping trong Hibernate, bạn phải ánh xạ các kiểu dữ liệu Java vào các kiểu dữ liệu RDBMS. Các kiểu khai báo và sử dụng trong các file mapping không phải là các kiểu dữ liệu Java; Chúng cũng không phải là các kiểu cơ sở dữ liệu SQL. Các loại này được gọi là các kiểu dữ liệu ánh xạ Hibernate, có thể dịch từ kiểu dữ liệu Java sang SQL và ngược lại.
Trong bài này liệt kê tất cả các kiểu dữ liệu cơ bản (nguyên thủy), date and time, đối tượng, và các mapping dựng sẵn khác.
Nội dung chính
Các kiểu dữ liệu nguyên thủy
Mapping type | Java type | ANSI SQL Type |
---|---|---|
integer | int hoặc java.lang.Integer | INTEGER |
long | long hoặc java.lang.Long | BIGINT |
short | short hoặc java.lang.Short | SMALLINT |
float | float hoặc java.lang.Float | FLOAT |
double | double hoặc java.lang.Double | DOUBLE |
big_decimal | java.math.BigDecimal | NUMERIC |
character | java.lang.String | CHAR(1) |
string | java.lang.String | VARCHAR |
byte | byte hoặc java.lang.Byte | TINYINT |
boolean | boolean hoặc java.lang.Boolean | BIT |
yes/no | boolean hoặc java.lang.Boolean | CHAR(1) ('Y' hoặc 'N') |
true/false | boolean hoặc java.lang.Boolean | CHAR(1) ('T' hoặc 'F') |
Các kiểu Date and time
Mapping type | Java type | ANSI SQL Type |
---|---|---|
date | java.util.Date hoặc java.sql.Date | DATE |
time | java.util.Date hoặc java.sql.Time | TIME |
timestamp | java.util.Date hoặc java.sql.Timestamp | TIMESTAMP |
calendar | java.util.Calendar | TIMESTAMP |
calendar_date | java.util.Calendar | DATE |
Các kiểu Binary và đối tượng lớn
Mapping type | Java type | ANSI SQL Type |
---|---|---|
binary | byte[] | VARBINARY (hoặc BLOB) |
text | java.lang.String | CLOB |
serializable | any Java class that implements java.io.Serializable | VARBINARY (hoặc BLOB) |
clob | java.sql.Clob | CLOB |
blob | java.sql.Blob | BLOB |
Các kiểu JDK-related
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 |