Hibernate O/R映射

O/R映射是ORM框架中最为关键的部分;

 

  • Hibernate基本数据类型,在Hibernate实体属性映射关系定义时,通过这些类型定义,可以完成Java数据类型到数据库特定数据类型的映射关系;

例如:

 

<property name="age" type="integer"></property>

 

 将integer类型的属性age映射到库表字段age;integer是hibernate基本数据之一,Hibernate中提供了丰富的数据类型,其中包括传统类型的java数据类型(String,Integer)及JDBC数据类型,如:Clob,Blob等;Hibernate还支持用户自定义类型;

在HIbernate中,基本数据类型:

Hibernate基本类型

JAVA类型

标准SQL字段类型

Boolean

Boolean,java.lang.boolean

BIT

Yes_no

Boolean,java.lang.boolean

Char(1)(‘Y’/’N’)

True_false

Boolean,java.lang.boolean

Char(1)(‘Y’/’N’)

Byte

Byte,java.lang.byte

TINYINT

Short

Short,java.lang.short

SMALLINT

Interger

Int,java.lang.integer

INTEGER

Long

Long,java.lang.long

BIGINT

Float

Float,java.lang.float

FLOAT

Double

Double,java.lang.Double

DOUBLE

Big_decimal

Java.math.BigDecimal

NUMBERIC

Character

Java.lang.string

CHAR(1)

String

Java.lang.string

VARCHAR

Date

Java.util.Date,java.sql.Date

DATE

Time

Java.util.Date,java.sql.Time

TIME

Timestamp

Java.util.Date,java.sql.TimeStamp

TIMESTAMP

Calender

Java.util.Calendar

TIMESTAMP

Calender_date

Java.util.Calendar

Date

Clob

Java.sql.clob

CLOB

Blob

Java.sql.blob

BLOB

Binary

Byte[]

VARBINARY,BLOB

Text

Java.lang.String

CLOB

Seralizable

Java.io.serializable

VARBINARY,BLOB

Class

Java.lang.class

VARCHAR

Local

Java.util.locale

VARCHAR

Timezone

Java.util.timezone

VARCHAR

Currency

Java.util.currency

VARCHAR

 

 

Hibernate基本类型概括了日常开发中所需的觉得大多数情况,提供了传统数据库类型和java数据类型之间的链接纽带;

 

 

  • 实体映射

 

实体映射技术作为类与表之间的联系纽带,对于使用Hibernate而言,映射关系更多的体现在配置文件的维护过程中;

       1.实体映射基础

实体映射的核心内容,即实体类与数据库表之间的映射定义;hibernate中,类映射主要包含3部分内容:

a.表名---类名映射

b.主键映射

c.字段映射

比如我们有TUser这个实体类,数据库里有TUser这个表;就可以通过XML文件对其进行关联,根据习惯,我们将映射文件(XML)的名字和类名保持一致;以.hbm.xml为结尾;如:

 

TUser.java:

 

public class TUser implements java.io.Serializable {
	private Integer tId;
	private String tName;
	private Integer age;
...
}

 TUser.hbm.xml:

 

 

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC 
	"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
	"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
	
<hibernate-mapping package="com.keith.bean"> <!-- 配置文件根节点 -->

	<!-- 类名/表名映射 -->
	<class name="TUser" table="TUser">
		
		<!-- id映射 -->
		<id name="tId">
			<generator class="native"/>
		</id>
		
		<!-- 字段映射 -->
		<property name="tName"></property>
		<property name="age" type="integer"></property>
	</class>
	
</hibernate-mapping>

 详细的字段属性设置,在hibernate文档中很详细;

 

Hibernate中还支持一种与实体无关的映射方式:动态模型(Dynamic Model)!(不知道用的多不多暂不学习!)

保姆级拆解:HP 1312NF/CM1415打印机进纸离合器清洁与更换全记录(附B站/油管视频指路) 本文详细记录了HP 1312NF打印机进纸离合器故障的诊断与修复全过程,包括故障判断、工具准备、拆解步骤、清洁更换技巧及预防措施。特别针对离合器内部海绵老化粘连问题,提供了电工胶布和硬纸片两种实用替代方案,并附有B站/油管视频指路,帮助用户轻松完成打印机维修。 阅读详情

相关推荐

PCB设计实践(三十二)PCB设计遇到大电流时的设计技巧

本文系统阐述10A至数百安培PCB设计的六大关键技术。载流能力优化强调铜厚选择(2-4oz)、线宽计算及并联结构;热管理提出散热孔阵列、铜基板嵌入等方案;布局策略包括功率分区和低阻抗路径设计;材料工艺推荐铝基板、陶瓷基板等高效解决方案;安全设计涵盖电气隔离与保护电路;验证环节需结合热仿真与实测。典型150A电机驱动板案例显示,通过4oz铝基板、散热孔阵列等设计,可实现温升≤45℃的稳定运行。核心在于铜厚线宽协同、主动散热及严格验证。

致力于硬件设计、人工智能知识及技术的分享,不断鞭策自己成长,共同进步! 4230

Hibernate O-R 映射

这些示例展示了 Hibernate 中一些基本的对象关系映射技术。根据你的具体需求,你可以选择合适的映射类型来处理实体之间的关系。如果你需要更详细的信息或特定的示例,请随时告诉我。

qq_33240556的博客 439

VMFS数据存储(datastore)丢失后恢复步骤

vmfs datastore恢复步骤

jetliu05的博客 3267

Hibernate O/R映射三大基本定则

转贴自/:http://www.yourblog.org/Data/20044/34092.html                      发表:2004-4-2 10:40:43  出处:你的博客网(yourblog.org)1. 引言 在Java环境下,有多种对象关系映射方法,如实体Bean、OJB、JDO、JDBC等。Hibernate是一种新的O/R映射工具,它不仅提供了从Ja

yq76034150的专栏 4513

同济土木非0基础三个月跨考复旦计算机攻略

跨考cs攻略前言我cs专业课如何复习How to start from zero简历其他复试 前言 建议多去工地/化工厂涡轮增压一下 我 同济土木gpa 3.2/5 挂科 * n 辣鸡项目 * n (padding 简历) 21考复旦计算机专硕 10月-12月 学习+复习 总分392 政治 68;背肖4即可 英语二 78 裸考,(高考英语140+);做点真题,建议据自己情况准备 数学二 142 ;(高考数学接近满分);做真题+模拟题,每天写一张试卷 专业课 104 ,考试生病了,下文展开。 cs专业课

piglake的博客 7237

Win10 Xbox游戏安装错误终极解决方案

Win10 Xbox游戏安装错误终极解决方案作为Windows 10系统深度用户,相信不少玩家都遇到过Xbox应用安装游戏失败的问题。这类问题轻则影响游戏体验,重则导致系统资源占用异常。本文将结合微软官方技术文档与实际维修案例,系统讲解Xbox游戏安装错误的深层原因与解决方案,帮助读者建立完整的故障处理思维体系。

mmoo_python的博客 2065

Hibernate(8)- O/R 映射

一.O/R 映射 目前为止我们已经通过应用 Hibernate 见识过十分基础的 O/R 映射了,但是还有三个更加重要的有关映射的话题需要我们更详细的探讨。这三个话题是集合的映射,实体类之间的关联映射以及组件映射。 二.集合映射 如果一个实例或者类中有特定变量的值的集合,那么我们可以应用 Java 中的任何的可用的接口来映射这些值。Hibernate 可以保存java.util.Ma...

yiguang_820的博客 444

ROS2实战:手把手教你用walking机器人仿真实现医院多楼层自动配送(含实时地图切换)

本文详细介绍了如何利用ROS2和walking机器人仿真平台实现医院多楼层自动配送系统,重点讲解了动态地图切换技术和多楼层导航的实现方法。通过实时加载地图和优化电梯过渡策略,解决了医院复杂环境下的自主配送难题,为医疗物流自动化提供了实用解决方案。

weixin_29090917的博客 364

【SSH】Hibernate:O/R实体映射与一对一关联

实体映射 O/R映射是ORM框架中最为关键的组成部分了。其中的实体映射介绍hibernate中类和表之间的映射属性字段的基本技术   问题:数据库中有一个表【T_User】,其中字段有【ID】、【name】,那么如何在hibernate中建立一个对应的映射呢? Hibernate 选用xml 作为类表映射配置媒介(默认为.hbm.xml后缀),通过xml可以将表T_User 映射到hibe

一支穿云箭 1995

硬核干货|C#+EtherCAT协议:高精度多轴伺服运动控制通信实战

本文摘要: 文章聚焦工业自动化领域多轴伺服运动控制的高精度与实时性需求,基于C#与EtherCAT协议实现完整解决方案。EtherCAT凭借微秒级同步、分布式架构等优势成为首选,而C#通过优化GC策略和实时线程可满足工业控制要求。文章从工程落地角度,详细拆解EtherCAT的PDO/SDO通信机制与多轴同步控制逻辑,提供完整的C#代码实现(主站初始化、伺服配置、运动控制等),所有代码均通过汇川/松下伺服实测验证。核心亮点包括:纯C#原生开发、工业现场高频问题解决方案、硬件适配指南,帮助开发者快速掌握高精度多

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 582

YOLO26改进策略【卷积层】| SPD-Conv 针对小目标和低分辨率图像的检测任务

SPD-Conv是一种新的 CNN 构建模块,用于替代传统 CNN 架构中使用的步长卷积(strided convolution)和池化(pooling)层,它由空间到深度(Space-to-depth,SPD)层和非步长卷积(non - strided convolution)层组成。

Limiiiing的博客 357

hibernate O/R映射之基础

hibernate(以下简称hiber)的第一编学习终于结束了。学习的过程中,总结出来一些经验及学习的笔记,特拿出来与大家共享之,由于我能力有限,不能对hiber做到精通,所以还请大家鉴别,如发现有什么错误,还望不吝指教,在此谢谢各位达人的斧正。学hiber的过程中,我买了本书:《深入浅出hibernate》,夏昕,曹晓刚,唐勇合著的,自我感觉书写的不错,真正的做到了深入浅出。但不足之处鄙人觉得事

香蕉熊的专栏 1519

用 OP-TEE 给 AI 模型“上锁”:密文存储、TEE 解密放行、推理后销毁(实战可落地)

本文提出一种基于OP-TEE的AI模型保护方案,通过两级密钥体系确保模型静态存储为密文,运行时仅在TEE内解密。方案采用KEK+DEK架构,DEK永不出TEE,支持分块解密与可验证擦除。该方案能有效防御静态分析、应用层逆向等威胁,但需承认其物理级攻击的局限性。文章详细描述了端到端架构、文件格式设计及TA实现要点,包括密钥管理、分块解密策略和销毁机制,为设备侧AI部署提供了工程可行的安全解决方案。

Interview_TC的博客 289

Hibernate O/R 映射

O/R 映射 目前为止我们已经通过应用 Hibernate 见识过十分基础的 O/R 映射了,但是还有三个更加重要的有关映射的话题需要我们更详细的探讨。这三个话题是集合的映射,实体类之间的关联映射以及组件映射。 集合映射 如果一个实例或者类中有特定变量的值的集合,那么我们可以应用 Java 中的任何的可用的接口来映射这些值。Hibernate 可以保存 java.util.Map, java.util.Set, java.util.SortedMap, java.util.SortedSet, java.u

草原印象的博客 301

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

O/R 映射技术的王牌Hibernate框架

Hibernate 是一个开放源码的 ORM 持久层框架。作为优秀的持久层框架实现,Hibernate 框架提供了强大、高性能的对象到关系型数据库的持久化服务,开发人员可以使用面向对象的设计进行持久层开发。简单的说,Hibernate 只是一个将持久化类与数据库表相映射的工具,每个持久化类实例均对应于数据库表中的一个数据行而已。用户只需直接使用面向对象的方法操作此持久化类实例,即可完成对数据库表数

u014531879的专栏 1362

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

学习笔记之 O/R 映射技术的王牌Hibernate框架

学习笔记之 O/R 映射技术的王牌Hibernate框架by Naven at 2005-09-21 - Javen-Studio 咖啡小屋工作室简介Hibernate 是一个开放源码的 ORM 持久层框架。作为优秀的持久层框架实现,Hibernate 框架提供了强大、高性能的对象到关系型数据库的持久化服务,开发人员可以使用面向对象的设计进行持久层开发。简单的说,Hibernate 只是一

lihengxin的专栏 1991

Hibernate O/R映射三大基本定则(转载)

Hibernate O/R映射三大基本定则引言在Java环境下,有多种对象关系映射方法,如实体Bean、OJB、JDO、JDBC等。Hibernate是一种新的O/R映射工具,它不仅提供了从Java类到数据表的映射,也提供了数据查询和恢复等机制。Hibernate非常简单易学,目前国内有很多同行已经或正在用Hibernate开发实施项目;但Hibernate有很多规则不为人知或应用甚少。本文的目的

1913

4.Hibernate O/R 映射

O/R 映射 目前为止我们已经通过应用 Hibernate 见识过十分基础的 O/R 映射了,但是还有三个更加重要的有关映射的话题需要我们更详细的探讨。这三个话题是集合的映射,实体类之间的关联映射以及组件映射。 集合映射 如果一个实例或者类中有特定变量的值的集合,那么我们可以应用 Java 中的任何的可用的接口来映射这些值。Hibernate 可以保存...

weixin_30900589的博客 138

Hibernate:O/R映射层

O/R映射层是持久层的一个特例,它的数据模型是对象模型(Object),存储模型是关系模型(Relational),cmp和Hibernate是对象模型到关系模型之间转换的两种不同实现。由于对象模型和关系模型应用广泛,所以很多人错误的认为数据持久层就是对象模型到关系型数据库的转换,其实持久化的范围更广一些。 其中,数据持久化就是将内存中的数据模型转换为存储模型,以及将存储模型转换为内存中数据模型

Miniyaner的专栏 3711

eclipse学习(第三章:ssh中的Hibernate)——6.Hibernate中O/R 映射

这里写目录标题前言O/R映射集合映射关联映射组件映射 前言 本文参考自https://www.w3cschool.cn/hibernate/wxm91ies.html后做的一个记录。 O/R映射 这里的意思是对象/关系映射。英文应该为 Object/Relation Mapping 集合映射 很多时候我们一个类里面并不是仅有基本数据类型的,我们很有可能在一个实例/类里面引用到数组或者一些接口,这个时候我们就以java内部的一些类为例子来说明一下。 一个实例或者类中有特定变量的值的集合,那么我们可以应用 Ja

weixin_43987277的博客 187
上一篇: Hibernate基础语义
下一篇: 初始云计算
keithJava
博客等级 码龄16年 2粉丝 41原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值