您的位置:首页 > 其它

hibernate学习笔记之四(Hibernate中的类型)

2015-07-01 15:39 471 查看
(hibernate学习笔记系列来自于 “疯狂Java” Hibernate视频学习)

Hibernate中的类型

在*.hbm.xml文件中,
<property name="password" column="t_pass">
,hibernate根据type转换将java转换成hibernate类型,然后再转换成SQL类型,
<property name="password"  type="..." column="t_pass">


hibernate的内置类型通常使用和Java类型相同名字,它能够将Java基本类型,Java时间和日期类型,Java大对象类型和jdk常用的Java类型映射到相应的标准的SQL类型。

Java应用通过hibernate访问数据库,而hibernate又通过jdbc驱动程序访问数据库,jdbc对底层数据库SQL类型进行封装,向上提供标准的SQL类型接口,这样hibernate就可以根据底层数据库使用SQL方言,把标准SQL类型翻译成底层数据库类型

基本类型映射表

HibernateJava类型标准SQL类型
integer/intint/Integer
longlong/Longbigint
shortshort/Shortsmallint
bytebyte/Bytetinyint
floatfloat/Floatfloat
doubledouble/Doubledouble
big_decimaljava.math.BigDecimalnumeric
characterchar/Characterchar(1)
stringStringvarchar
booleanBoolean/booleanbit
yes_noBoolean/booleanchar(1)(‘Y’/’N’)
true_falseboolean/Booleanchar(1)(‘T’/’F’)
.hbm.xml文件中type写得是Hibernate中的类型

时间和日期

date

time

timestamp

默认

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

在Java中,java.lang.String可用于表示长字符串(长度没有限制),字节数组byte[]可用于存放图片或长文件的二进制数据。此外在JDBC API中又提供了java.sql.Clob和java.sql.Blob类型,分别对应标准SQL中的CLOB和BLOB类型对应

大对象配置表

映射类型Java类型标准SQL类型描述
binarybyte[]varbinary/blob存放二进制数
textStringclob字符串大对象
serializableserializable接口的类varbinary/blob
clobjava.sql.Clobclob字符串大对象
blobjava.sql.Blobblob二进制大对象
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: