欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Hibernate内置映射类型

程序员文章站 2022-04-20 11:12:54
...

Hibernate映射文件中,Hibernate采用映射类型作为Java类型和SQL类型的桥梁

如:

<id name="id" column="ID" type="int">
   <generator class="increment">
</id>
<property name="username" type="string" />

 

Hibernate映射类型分为两类:

1、内置映射类型

 2、客户化映射类型

Java基本类型的Hibernate映射类型

Hibernate映射类型 Java类型 标准SQL 大小
integer或int int或java.lang.Integer integer 4字节
long long或java.lang.Long bigint 8字节
short short或java.lang.Short smallint 2字节
byte byte或java.lang.Byte tinyint 1字节
float float或java.lang.Float flat 4字节
double double或java.lang.Double double 8字节
character char或java.lang.Char或java.lang.String char(1) 定长字符串
string java.lang.String varchar 可变长度字符串
boolean

boolean或

java.lang.Boolean

bit 布尔类型
yes_no boolean或java.lang.Boolean char(1)(Y或N) 布尔类型
true_false boolean或java.lang.Boolean char(1)(T或F) 布尔类型

 

Java时间和日期类型的Hibernate映射

Hibernate映射类型 Java类型 标准SQL类型 描述
date

java.util.Date或

java.sql.Date

date

代表日期,格式为:

yyyy-mm-dd

time

java.util.Date或

java.sql.Time

 time

代表时间,格式为:

HH:MM:SS

 timestamp

java.util.Date或

java.sql.Timestamp 

 timestamp

 代表时间和日期,格式为:

YYYY-MM-DD HH:MM:SS

 calendar  java.util.Calendar  timestamp  同上
 calendar_date  java.util.Calendar  date

 代表日期,形式为:

YYYY-MM-DD

 Java大对象类型的Hibernate映射类型

映射类型 Java类型 标准sql MySQL Oracle
binary byte[]

varbinary或

blob

blob blob
text java.lang.String clob text clob
serializable 实现java.io.Serializable接口的任意Java类

varbinary或

blob

text blob
clob java.sql.Clob clob text clob
blob java.sql.Blob blob blob blob

JDK自带的个别Java类的Hibernate映射

映射类型 Java类型 标准SQL
class java.lang.Class varchar
locale java.util.Locale varchar
time java.util.TimeZone varchar
currency java.util.Currency varchar