Hibernate的映射类型

1. 如果不存在对应的, 如mysql的mediumint是3字节, 则可以通过
<property name="uid">
<column name="uid" sql-type="mediumint" />
</property>
来指定

2. 如果你使用unsigned tinyint的话, 对应java类型为byte, 但是事实上你只能使用0-127的数字
如果由外部程序写入数据库, 写入的值超过127的话, hibernate读取映射的时候将产生exception


hibernate类型 | java类型 | 数据库类型 | 字节
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 实例时,必须包含两个步骤:
在一个数据库事务中先保存一个空的 Blob 或 Clob 实例。
接着锁定这条记录,更新上面保存的 Blob 或 Clob 实例,把二进制数据或文本数据写到 Blob 或Clob 实例中

你可能感兴趣的:(Hibernate,职场,休闲,映射类型)