内置的 basic mapping types 可以大致地分类为:
integer, long, short, float, double, character, byte, boolean, yes_no, true_false
string
date, time, timestamp
从
java.util.Date
和其子类到 SQL 类型 DATE
,TIME
和 TIMESTAMP
(或等价类型)的映射。
calendar, calendar_date
big_decimal, big_integer
从
java.math.BigDecimal
和 java.math.BigInteger
到 NUMERIC
(或者 Oracle 的 NUMBER
类型)的映射。
locale, timezone, currency
class
从
java.lang.Class
到 VARCHAR
(或者 Oracle 的 VARCHAR2
类型)的映射。Class
被映射为它的全限定名。
binary
text
serializable
把可序列化的 Java 类型映射到对应的 SQL 二进制类型。你也可以为一个并非默认为基本类型的可序列化 Java 类或者接口指定 Hibernate 类型
serializable
。
clob, blob
imm_date, imm_time, imm_timestamp, imm_calendar, imm_calendar_date, imm_serializable, imm_binary
实体及其集合的唯一标识可以是除了
binary
、 blob
和 clob
之外的任何基础类型。(联合标识也是允许的,后面会说到。)
在
org.hibernate.Hibernate
中,定义了基础类型对应的 Type
常量。比如,Hibernate.STRING
代表 string
类型。