short
short Short
SMALLINT
2字节
byte
byte Byte
TINYINT
1字节
float
float Float
FLOAT
4字节
double
double Double
DOUBLE
8字节
big_decimal
java.math.BigDecimal
NUMERIC
NUMERIC(8,2)8位
character
char Character String
CHAR(1)
定长字符
string
String
VARCHAR
变长字符串
boolean
boolean Boolean
BIT
布尔类型
yes_no
boolean Boolean
CHAR(1) (Y-N)
布尔类型
true_false
boolean Boolean
CHAR(1) (T-F)
布尔类型
2、Java时间和日期类型的Hibernate映射
映射类型 | Java类型 | 标准SQL类型 | 描述 |
date | util.Date或者sql.Date | DATE | YYYY-MM-DD |
time | Date Time | TIME | HH:MM:SS |
timestamp | Date Timestamp | TIMESTAMP | YYYYMMDDHHMMSS |
calendar | calendar | TIMESTAMP | YYYYMMDDHHMMSS |
calendar_date | calendar | DATE | YYYY-MM-DD |
3、Java大对象类型的Hibernate映射类型
映射类型 | Java类型 | 标准SQL类型 | MySQL类型 | Oracle类型 |
binary | byte[] | VARBINARY(或BLOB) | BLOB | BLOB |
text | String | CLOB | TEXT | CLOB |
serializable | Serializable接口任意实现类 | VARBINARY(或BLOB) | BLOB | BLOB |
clob | java.sql.Clob | CLOB | TEXT | CLOB |
blob | java.sql.Blob | BLOB | BLOB | BLOB |
在程序中通过Hibernate来保存java.sql.Clob或者java.sql.Blob实例时,必须包含两个步骤:
l 在一个数据库事务中先保存一个空的Blob或Clob实例。
l 接着锁定这条记录,更新上面保存的Blob或Clob实例,把二进制数据或文本数据写到Blob或Clob实例中。