`
zyc1006
  • 浏览: 132182 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Hibernate类型映射之内置类型映射

阅读更多

Hibernate的类型映射类型从总体上可以分为两种:内置类型映射和客户类型映射。内置类型映射负责把一些常见的java类型映射到sql类型:此外,Hibernate还允许用户实现UserTypeCompositeUserType接口,来灵活的制定客户化映射类型。客户类型映射可以将用户定义的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’)
布尔类型
     
  
2Java时间和日期类型的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
 


Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1667224

分享到:
评论

相关推荐

    myeclipse自动生成hibernate映射文件

    每个实体类有一个对应的hbm.xml配置文件匹配,myeclipse中有个MyEclipse Database Explorer视图,它提供了myeclipse与数据库直接连接的内置窗口,并且通过此窗口可以生成hibernate的mapping文件。 运用myeclipse的...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part2

     11.1.2 Java时间和日期类型的Hibernate映射类型  11.1.3 Java大对象类型的Hibernate映射类型  11.1.4 JDK自带的个别Java类的Hibernate映射类型  11.1.5 使用Hibernate内置映射类型  11.2 客户化映射类型  ...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part4

     11.1.2 Java时间和日期类型的Hibernate映射类型  11.1.3 Java大对象类型的Hibernate映射类型  11.1.4 JDK自带的个别Java类的Hibernate映射类型  11.1.5 使用Hibernate内置映射类型  11.2 客户化映射类型  ...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part3

     11.1.2 Java时间和日期类型的Hibernate映射类型  11.1.3 Java大对象类型的Hibernate映射类型  11.1.4 JDK自带的个别Java类的Hibernate映射类型  11.1.5 使用Hibernate内置映射类型  11.2 客户化映射类型  ...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part1.rar

     11.1.2 Java时间和日期类型的Hibernate映射类型  11.1.3 Java大对象类型的Hibernate映射类型  11.1.4 JDK自带的个别Java类的Hibernate映射类型  11.1.5 使用Hibernate内置映射类型  11.2 客户化映射类型  ...

    精通hibernate:对象持久化技术孙卫琴第二版part2

    2.4.3 Hibernate映射类型接口 41 2.4.4 可供扩展的接口 42 2.5 小结 43 2.6 思考题 45 第3章 第一个Hibernate应用 47 本章通过简单的helloapp应用例子,演示如何利用Hibernate来持久化Java对象。 3.1 创建...

    精通Hibernate:对象持久化技术第二版part3

    2.4.3 Hibernate映射类型接口 41 2.4.4 可供扩展的接口 42 2.5 小结 43 2.6 思考题 45 第3章 第一个Hibernate应用 47 本章通过简单的helloapp应用例子,演示如何利用Hibernate来持久化Java对象。 3.1 创建...

    惊蛰持久层,实现了动态映射,运行时改变数据库结构,同结构表,多数据库存储

    一个类似于Hibernate的持久层,比hibernate更小巧更灵活。并且实现了动态映射。运行时改变数据库结构。 比itbais不用写sql,内置了分页查询。详情请访问blog http://blog.csdn.net/hzg801106/

    Java的Hibernate框架中集合类数据结构的映射编写教程

    Hibernate可以将Java中几个内置的集合结构映射为数据库使用的关系模型,下面我们就来看一下Java的Hibernate框架中集合类数据结构的映射编写教程:

    从J2SE到J2EE知识点介绍

    2. Java时间和日期类型的Hibernate映射类型 224 3. Java大对象类型的Hibernate映射类型 225 4. 关联关系映射 225 5. Hibernate的事务与并发 238 (十) 数据库 240 1. 数据库的基本概念 240 2. 数据模型 240 3. 关系...

    BeetlSQL数据库访问框架是一个全功能 DAO 工具,同时具有 Hibernate.rar

    BeetSql是一个全功能DAO工具,同时具有Hibernate 优点 & Mybatis优点功能,适用于承认以SQL为中心,同时又需求工具能自动能生成大量常用的SQL的应用。 在开发效率上,无需注解,自动使用大量内置SQL,轻易完成增删...

    java从入门到精通70个PPT

    43 Hibernate 关联映射 44 HQL实用技术 45 HQL高级 46 Criteria 查询 47-49 项目实战 影院信息查询系统 50 pl/sql 51 Oracle数据库对象 52 提高数据库性能 53 hibernate总结 54 使用Spring容器管理JavaBean 55 ...

    Grails 中文参考手册

    1. 简介 2. 起步 2.1 下载并安装Grails 2.2 创建一个Grails应用 2.3 Hello World示例 2.4 使用IDE 2.5 规约配置 2.6 运行Grails应用 2.7 测试Grails应用 ...15.1 通过Hibernate注释进行映射 15.2 深入了解 16. 脚手架

    2023Java高频面试题

    Hibernate框架:Hibernate框架的基础概念、ORM映射、HQL查询等。 Servlet与JSP:Web开发的基础知识、Servlet和JSP的基础概念、生命周期、内置对象等。 设计模式:单例模式、工厂模式、代理模式等常见的设计模式。 ...

    java web技术开发大全(最全最新)

    《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》重点讲解了Struts 2、Speing和HIbernate框架的基础知识和高级技术,如Sruts 2中的*、类型转换、国际化和标签等,HIbe rna{e的会话、0/R映射和...

    Java Web程序设计教程

    8.3.6hibernate映射文件 180 8.3.7hibernate工作原理 182 8.4项目实战——新闻内容显示 183 本章小结 186 课后练习 187 第9章hibernate查询 188 9.1hibernate的数据检索策略 188 9.1.1立即检索 188 9.1.2...

    GRails 中文帮助文档(参考手册)和安装开发介绍帮助

    Grails基于这些概念之上,采用动态方法减小了Java平台上进行Web开发的复杂度,不过与那些框架不同的是,Grails是构建在Spring和Hibernate等Java已有的技术之上的。 易于使用的基于Hibernate的对象-关系映射(ORM)层 ...

    grails-docs-2.0.3.zip

    Grails基于这些概念之上,采用动态方法减小了Java平台上进行Web开发的复杂度,不过与那些框架不同的是,Grails是构建在Spring和Hibernate等Java已有的技术之上的。 易于使用的基于Hibernate的对象-关系映射(ORM)层 ...

Global site tag (gtag.js) - Google Analytics