概述
Hibernate
的类型映射类型从总体上可以分为两种:内置类型映射和客户类型映射。内置类型映射负责把一些常见的
java
类型映射到
sql
类型:此外,
Hibernate
还允许用户实现
UserType
或
CompositeUserType
接口,来灵活的制定客户化映射类型。客户类型映射可以将用户定义的
java
类映射到数据库表的相应字段。
内置类型映射:
(1)
Java
基本类型的
Hibernate
映射:
表
2.1
列出了
Hibernate
中的映射类型和与其对应的
Java
类型以及对应的标准
SQL
类型和相应的说明。
表
2.1
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
|
FLOAT
|
4
字节,单精度浮点数
|
double
|
double
或者
java.lang.Double
|
DOUBLE
|
8
字节,双精度浮点数
|
big_decimal
|
java.math.BigDecimal
|
NUMERIC
|
NUMERIC(8,2)
表示共
8
位数字,其中两位是小数
|
character
|
char
或者
java.lang.Character,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’)
|
布尔类型
|
2
、
Java
时间和日期类型的
Hibernate
的类型映射:
在
Java
中,代表时间和日期的类型包括:
java.util.Date
和
java.util.Calendar
。此外在
JDBC API
中还提供了三个扩展了
java.util.Date
类的子类:
java.sql.Date
和
java.sql.Time
以及
java.sql.Timestamp,
这三个类分别和标准
sql
类型中的
DATE,TIME,TIMESTAMP
相对应。
表
2.2
列出了
Hibernate
中的映射类型和与其对应的
Java
日期类型以及对应的标准
SQL
类型和相应的说明。
表
2.2
映射类型
|
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.Calendar
|
TIMESTAMP
|
代表时间和日期,形式为
YYYYMMDDHHMMSS
|
calendar
|
同上
|
同上
|
同上
|
calendar_date
|
java.util.Calendar
|
DATE
|
代表日期:形势为
YYYY-MM-DD
|
字段类型映射配置事例:
<property name=”name” column=”Name” type=”string”/>
<property name=”birthday” column=”Brithday” type=”date”/>
<property name=”registereddate” column=”Registereddate” type=”timestamp”/>
下图为以上配置对应的数据库表
:
Name varchar2(20)
Birthday DATE
Registereddate Timestamp
|
3、
JDK
自带的个别
Java
类的
Hibernate
映射类型:
表
2.3
列出了个别
Java
类的
Hibernate
映射类型,与此对应的标准
SQL
类型均为
VARCHAR
类型。
表
2.3
映射类型
|
Java
类型
|
标准
SQL
类型
|
class
|
java.lang.Class
|
VARCHAR
|
locale
|
java.util.Locale
|
VARCHAR
|
timezone
|
java.util.TimeZone
|
VARCHAR
|
currency
|
java.util.Currency
|
VARCHAR
|
最后
以上就是坦率曲奇为你收集整理的Hibernate的类型映射类型的全部内容,希望文章能够帮你解决Hibernate的类型映射类型所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复