`

Hibernate 数据库字段映射类型 【转】

阅读更多

Hibernate映射类型分为两种:内置映射类型和客户化映射类型。内置映射类型负责把一些常见的Java类型映射到相应的SQL类型;此外,Hibernate还允许用户实现UserTypeCompositeUserType接口,来灵活地定制客户化映射类型。客户化类型能够把用户定义的Java类型映射到数据库表的相应字段。

 

一、Hibernate的内置映射类型

1Java基本类型的Hibernate映射类型

Hibernate映射类型

Java类型

标准SQL类型

大小和取值范围

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)

布尔类型

 

2Java时间和日期类型的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

 

3Java大对象类型的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实例时,必须包含两个步骤:

l         在一个数据库事务中先保存一个空的BlobClob实例。

l         接着锁定这条记录,更新上面保存的BlobClob实例,把二进制数据或文本数据写到BlobClob实例中。

 

4JDK自带的个别Java类的Hibernate映射类型(略)

 

5、使用Hibernate内置映射类型

  

二、客户化映射类型(略)

结束!

http://aumy2008.blogbus.com/logs/13732626.html  转自小于

分享到:
评论

相关推荐

    JAVA数据类型与Hibernate的类型映射

    对于数组和集合,如List、Set、Map等,Hibernate提供了ListType、SetType、MapType等映射类型,可以根据实际需求选择。 此外,自定义对象的映射是Hibernate映射中的一个重要部分。通过在实体类上使用@Entity注解,...

    hibernate使用中与各种数据库字段类型对应类型训练

    本训练主要关注在使用Hibernate时如何处理与各种数据库字段类型的映射,这对于理解和优化数据库交互至关重要。 首先,我们要理解Hibernate的核心概念——对象关系映射(ORM)。ORM允许我们将数据库表结构映射到Java...

    Hibernate 配置跟数据库字段的对应关系

    本文将深入探讨如何在Hibernate配置中设置与数据库字段的对应关系,以及相关的Mysql数据库数据类型。 首先,我们需要理解Hibernate的核心配置文件`hibernate.cfg.xml`,在这个文件中,我们定义了数据源、持久化类...

    数据库表映射成实体类

    在实际项目中,映射文件(如Hibernate的`hbm.xml`或MyBatis的`Mapper`接口)通常会详细定义每个字段的数据类型、主键、关联关系等信息。这有助于保持代码与数据库结构的一致性,并简化了数据库设计的变化对代码的...

    数据库字段名转换成Java字段名

    - ORM框架如Hibernate、MyBatis等,能自动处理数据库字段与Java对象之间的映射,包括字段名的转换。它们提供了配置或注解的方式来指定字段的对应关系。 3. **工具**: - 开发者可以使用一些工具,如在线转换器或...

    hibernate映射枚举类型

    Hibernate,作为Java中广泛使用的对象关系映射(ORM)框架,提供了一种优雅的方式来映射枚举类型到数据库。本文将深入探讨Hibernate如何映射枚举类型,并给出实际应用示例。 ### Hibernate枚举映射方式 #### 1. `@...

    使用注解javaBean关联数据库字段

    2. **注解与数据库字段的映射**: - **@Entity**:标记一个类为数据库中的实体,通常代表一个表。例如,`@Entity(name="User")`表示这个类对应数据库中的"User"表。 - **@Table**:用于更精确地定义实体所对应的...

    hibernate根据字段生成数据库表

    ### Hibernate根据字段生成数据库表 #### 一、概述 在软件开发过程中,特别是在进行多数据库支持的应用程序开发时,我们经常需要将同一套代码部署到不同的数据库系统上。这种情况下,手动为每个数据库创建相同的表...

    hibernate实体映射文件字段设置默认值

    ### Hibernate实体映射文件字段设置默认值 在Hibernate框架中,实体映射文件(通常为`.hbm.xml`)用于定义Java对象与数据库表之间的映射关系。这其中包括了属性到数据库表列的映射、主键生成策略、以及一些高级特性...

    Hibernate注释方法描述数据库映射

    `@Column` 注解用于指定字段映射到数据库表中的哪一列,并可以指定列的各种属性,例如是否可更新、是否允许为空以及列长度等。例如: ```java @Entity public class Flight implements Serializable { @Column...

    hibernate映射文件生成数据库

    在Java开发领域,Hibernate是一个非常流行的对象关系映射(ORM)框架,它允许开发者使用面向对象的方式处理数据库操作。本文将深入探讨如何利用Hibernate的映射文件来生成数据库,以此提高开发效率并减少手动创建...

    Hibernate 映射数据库表插件

    2. **映射文件(Mapping Files)**:.hbm.xml文件定义了数据库表与实体类之间的映射规则,包括字段映射、主键生成策略等。 3. **配置文件(Configuration Files)**:如hibernate.cfg.xml,用于配置数据库连接信息、...

    geometry类型与数据库做映射的包

    本项目中提到的"geometry类型与数据库做映射的包"很可能是Hibernate Spatial,它是Hibernate的一个插件,提供了对空间数据类型的支持,使得我们可以将geometry对象无缝地存入支持空间数据的数据库,如PostGIS(基于...

    Hibernate数据类型映射及ID

    描述:“Hibernate与各数据库数据类型的映射” ### Hibernate数据类型映射 Hibernate作为一款流行的Java持久层框架,它提供了丰富的数据类型映射功能,使得开发者能够更加灵活地在Java对象和关系型数据库之间进行...

    hibernate数据库访问接口设计

    使用注解或XML文件进行映射,定义类属性与数据库字段的对应关系,如主键、外键、索引等。 ### 7. Cascade 和 Lazy Loading `Cascade` 属性允许将操作(如保存、更新、删除)自动应用到关联的对象。`Lazy Loading` ...

    商城数据库hibernate映射实例

    在Hibernate中,我们可以创建一个User类,并在对应的User.hbm.xml文件中定义字段到列的映射。 2. **商品实体(Product Entity)**:商品实体包含商品ID、名称、价格、库存等信息。同样,我们需要创建Product类和...

    hibernate map 集合映射

    Hibernate集合映射类型 - **List**: 映射为数据库中的列表,元素顺序可以被持久化。 - **Set**: 映射为无序且无重复元素的集合,如HashSet。 - **Bag**: 与List类似,但不保证元素顺序,不推荐使用。 - **Map**: ...

    自动读取mysql数据库字段并自动生成java属性和set和get方法

    在实际应用中,这也可以扩展到其他ORM(对象关系映射)框架,如Hibernate或MyBatis,它们同样依赖于数据库字段和Java对象的映射。 在压缩包子文件的文件名称列表中,"FieldToRead--属性读写"可能表示的是一个实现此...

    Spring+Hibernate 自动映射

    1. **对象关系映射**:Hibernate通过XML映射文件或注解,将数据库表与Java对象对应起来,实现了数据库操作的对象化,使得开发者可以像操作普通Java对象一样操作数据库记录。 2. **查询语言(HQL)**:Hibernate提供...

Global site tag (gtag.js) - Google Analytics