Hibernate - 映射类型


当您准备 Hibernate 映射文档时,您会发现将 Java 数据类型映射到 RDBMS 数据类型。映射文件中声明和使用的类型不是Java 数据类型;它们也不是 SQL 数据库类型。这些类型称为Hibernate 映射类型,可以从 Java 数据类型转换为 SQL 数据类型,反之亦然。

本章列出了所有基本的、日期和时间、大对象以及各种其他内置映射类型。

原始类型

映射类型 Java类型 ANSI SQL 类型
整数 int 或 java.lang.Integer 整数
长的 long 或 java.lang.Long BIGINT
短的 Short 或 java.lang.Short 小智
漂浮 float 或 java.lang.Float 漂浮
双倍的 double 或 java.lang.Double 双倍的
大十进制 java.math.BigDecimal 数字
特点 java.lang.String 字符(1)
细绳 java.lang.String VARCHAR
字节 byte 或 java.lang.Byte 天音
布尔值 布尔值或 java.lang.Boolean 少量
是/否 布尔值或 java.lang.Boolean CHAR(1)(“Y”或“N”)
真假 布尔值或 java.lang.Boolean CHAR(1)(“T”或“F”)

日期和时间类型

映射类型 Java类型 ANSI SQL 类型
日期 java.util.Date 或 java.sql.Date 日期
时间 java.util.Date 或 java.sql.Time 时间
时间戳 java.util.Date 或 java.sql.Timestamp 时间戳
日历 java.util.日历 时间戳
日历日期 java.util.日历 日期

二进制和大对象类型

映射类型 Java类型 ANSI SQL 类型
二进制 字节[] VARBINARY(或 BLOB)
文本 java.lang.String CLOB
可序列化 任何实现 java.io.Serializable 的 Java 类 VARBINARY(或 BLOB)
块状 java.sql.Clob CLOB
斑点 java.sql.Blob BLOB

JDK相关类型

映射类型 Java类型 ANSI SQL 类型
班级 java.lang.Class VARCHAR
语言环境 java.util.Locale VARCHAR
时区 java.util.TimeZone VARCHAR
货币 java.util.Currency VARCHAR