我是靠谱客的博主 坦率曲奇,这篇文章主要介绍Hibernate的类型映射类型,现在分享给大家,希望可以做个参考。

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内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(258)

评论列表共有 0 条评论

立即
投稿
返回
顶部