Hibernate的映射类型

http://cam.taoke.alimama.com/event.php?pid=mm_10972871_0_0&eventid=100012
Hibernate的映射类型(转)
关键字: hibernate

Hibernate 映射类型分为两种:内置映射类型和客户化映射类型。内置映射类型负责把一些常见的 Java 类型映射到相应的 SQL 类型;此外, Hibernate 还允许用户实现 UserType 或 CompositeUserType 接口,来灵活地定制客户化映射类型。客户化类型能够把用户定义的 Java 类型映射到数据库表的相应字段。


一、 Hibernate 的内置映射类型

1 、 Java 基本类型的 Hibernate 映射类型

Hibernate 映射类型
Java 类型
标准 SQL 类型
大小和取值范围

integer 或者 int
int 或者 java.lang.Integer
INTEGER
4 字节

long
long Long
BIGINT
8 字节

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 实例中。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值