hibernate映射类型分为两种:内置的映射类型和客户化映射类型。内置映射类型负责把一些常见的Java类型映射到相应的SQL类型;此外,Hibernate还允许用户实现UserType或CompositeUserType接口,来灵活地定制客户化映射类型
1.内置映射类型
1).Java基本类型的Hibernate映射类型
Java类型 Hibernate映射类型 标准SQL类型 大小和取值范围
int/Integer int/integer INTEGER 4Byte
long/Long long BIGINT 8Byte
short/Short short SAMLLINT 2Byte
byte/Byte byte TINYINT 1Byte
float/Float float FLOAT 4Byte
double/Double double DOUBLE 8Byte
BigDecimal big_decimal NUMBERIC Numeric(8,2)
char/Character/String character CHAR(1) 定长字符
String string VARCHAR 变长字符
boolean/Boolean boolean BIT 布尔类型
boolean/Boolean yes/no CHAR(1)('Y'/'N') 布尔类型
boolean/Boolean true/false CHAR(1)('T'/'F') 布尔类型
2). Java时间和日期类型的Hibernate映射类型
Java类型 Hibernate映射类型 标准SQL类型 描述
java.util.Date/java.sql.Date date DATE 日期,yyyy-mm-dd
java.util.Date/java.sql.Time time TIME 时间,hh:mm:ss
java.util.Date/java.sql.Timestamp timestamp TIMESTAMP 时间戳,yyyymmddhhmmss
java.util.Calendar calendar TIMESTAMP 同上
java.util.Calendar calendar_date DATE 日期,yyyy-mm-dd
* 当程序类型为java.sql.Timestamp, 数据库中表属性类型为timestamp的情况下,即使用户以空值插入数据,数据库系统仍然会自动填充timestamp的值
3). Java 大对象类型的Hibernate映射类型
Java类型 Hibernate映射类型 标准SQL类型 MySql类型 Oracle类型
byte[] binary VARBINARY/BLOB BLOB BLOB
String text CLOB TEXT CLOB
serializable 实现serializable接口的一个java类 VARBINARY/BLOB BLOB BLOB
java.sql.Clob clob CLOB TEXT CLOB
java.sql.Blob blob BLOB BLOB BLOB
* 在应用程序中通过Hibernate来保存java.sql.Clob或者java.sql.Blob实例时,必须包含两个步骤:
a. 在一个数据库事务中先保存一个空的Blob或Clob实例;b. 接着锁定这条记录,更新在步骤(1)中保存的Blob或Clob实例,把二进制数据或长文本数据写到Blob或Clob实例中。
转自:http://blog.csdn.net/cocijava/article/details/52303319
分享到:
相关推荐
此外,自定义对象的映射是Hibernate映射中的一个重要部分。通过在实体类上使用@Entity注解,并使用@Id注解指定主键字段,可以将一个Java类映射到数据库的一张表。字段则通过@Column注解来指定列名和属性,如长度、...
在Java编程中,枚举类型(Enum)是一种...正确地映射枚举类型可以增强代码的可读性和可维护性,同时减少因数据类型转换导致的潜在错误。在实际开发中,我们应该根据业务场景和枚举特性的需求,选择最合适的映射策略。
关于Hibernate的基本数据类型与Java中基本数据类型的映射关系
标题:“Hibernate数据类型映射及ID” 描述:“Hibernate与各数据库数据类型的映射” ### Hibernate数据类型映射 Hibernate作为一款流行的Java持久层框架,它提供了丰富的数据类型映射功能,使得开发者能够更加...
总的来说,理解 Hibernate 中的数据类型映射是进行数据库操作的关键,它有助于确保数据在 Java 应用程序和数据库之间的准确传输,并确保程序的稳定性和兼容性。正确选择和配置这些类型可以避免许多潜在的问题,如...
hibernate映射文件是Java开发中用于对象关系映射(ORM)的重要组成部分,它将数据库表与Java类之间的关系进行定义,使得开发者无需编写大量的SQL语句,就能实现对数据库的操作。`生成hibernate映射文件工具`是为了...
**hibernate映射与查询** Hibernate 是一个流行的 Java 应用程序开发框架,它提供了一个持久层解决方案,简化了数据库操作。对于初学者来说,理解 Hibernate 的映射和查询机制是至关重要的,因为它们构成了 ...
理解Hibernate映射类型与Java类型的对应关系对于有效地使用Hibernate至关重要。 首先,我们来看一下基本数据类型的映射。`integer`对应Java中的`int`或`Integer`,在SQL中映射为`INTEGER`类型;`long`对应`long`或`...
Hibernate数据类型映射表,介绍hibernate中各类型数据的关系!
映射文件包含了类名、表名、字段及其数据类型等信息。例如: ```xml <hibernate-mapping> </hibernate-mapping> ``` 在上述示例中,`User`类与`users`表对应,`id`字段表示主键,`username`和`...
Hibernate映射是ORM(对象关系映射)框架中的一项关键技术,它允许开发者在数据库表和Java对象之间建立映射关系,从而简化了数据访问层的开发工作。映射文件通常是`.hbm.xml`格式的XML文档,遵循特定的DTD(Document...
### 常用Hibernate映射配置详解 #### 1. hibernate-mapping节点解析 `hibernate-mapping`节点是Hibernate映射文件中的顶级节点,用于定义一系列配置选项,控制整个映射文件的行为和映射规则。这些配置包括数据库...
总而言之,Java数据类型、Hibernate映射类型和SQL数据类型之间的对应关系是Java开发者尤其是进行数据库交互的开发者必须掌握的基础知识。通过深入理解并熟练运用这些映射规则,我们可以更好地实现Java应用与数据库...
"hibernate映射Oracle中LONG类型" Hibernate 框架映射 Oracle 中的 LONG 类型字段是一种复杂的技术问题。Oracle 中的 LONG 类型字段是一种特殊的数据类型,用于存储可变长字符串,最大长度限制是 2GB。这与 Java ...
2. 数据库兼容性:不同的数据库系统有不同的数据类型,需要确保映射文件中的数据类型与数据库兼容。 3. 关联关系:如果你的实体类间存在关联,如一对一、一对多或多对多,需要在映射文件中正确地配置外键和关联关系...
默认情况下,Hibernate使用Java的标准数据类型来映射数据库中的列。例如,Integer对应INT,String对应VARCHAR等。然而,当数据库中存在特殊类型或者我们的业务逻辑需要特定的数据结构时,就需要自定义数据类型。 ...
"Hibernate映射配置实例大全"是一个全面深入的资源,旨在帮助开发者理解和掌握如何有效地配置Hibernate以实现对象关系映射(ORM)。在这个文档中,我们将探讨各种关键的映射配置方法,以及相关的实例。 首先,我们...
### 用Hibernate映射继承关系 #### 14.1 继承关系树的每个具体类对应一个表 在Hibernate中映射继承关系时,一种常见的策略是将继承关系树的每个具体类映射到单独的数据库表中。这种方法称为**表/类映射**(Table/...
确保数据库与Hibernate映射文件一致,能正确地反映实体之间的关系。导入DBO到SQL Server数据库后,就可以通过Hibernate的Session接口进行CRUD(创建、读取、更新、删除)操作了。 在开发过程中,理解并熟练运用这些...