闲来无事,复习复习以前的东西---hibernate中的关联映射图解 ---- 继承映射

SSH框架之Hibernate的关联映射之一对多、多对一映射 关联映射之一对多、多对一映射 一、需求: 部门与员工 一个部门有多个员工 【一对多】 多个员工,属于一个部门 【多对一】 二、逻辑分析: 三、代码实现 1、javabean及映射文件的配置: 1)Employee.java、Employee.hbm.xml 2)Dept.java、Dept.hbm.xml 阅读详情

1. 将整个继承树映射成一张表,对象模型如下:

        当我们需要把整棵继承树映射成一张表时,那么这张表应该包含继承树中的所有属性,其次为了区分每个子类,我们应该还要包含一个标识字段,所以表中属性应该是继承树中的所有属性外加一个区分子类的标识字段。

java文件:

  

hbm.xml文件:

数据库表:

测试:

也可以通过父类来加载子类:

测试代码:

数据库数据:

加载结果:

注意:此处根据主键将第2条数据“小鸟”加载上来,但是我们使用的是父类,怎么会知道是子类小鸟呢,这就是hibernate在加载数据的时候根据hbm.xml文件中的鉴别器<discriminator>区分的。

 

2. 每个类(包括父类)映射成一张表,对象模型如上不变

既然对象模型不变,那么对象、操作代码应该都是不需要改变的,因为只是改变了存储模型,所以只要更改映射文件即可,如下

hbm.xml:

数据库表:

测试代码:

数据库数据:

  

 

3. 每个子类映射成一个表,对象模型依然不用改,只要修改存储模型

hbm.xml文件

【Android Performance】Android CPU调度模式详解:从performance到schedutil的Governor调优指南 本文系统讲解Android/Linux系统中的CPU频率调节策略(Governor),涵盖六大调度模式的底层工作原理:performance(性能优先)、powersave(省电优先)、conservative(保守调频)、ondemand(按需调频)、userspace(手动控制)以及schedutil(调度器驱动)。文中深入拆解每种Governor的调频决策逻辑、上升/下降曲线的差异、适用场景与选型建议,并配以实操命令演示如何查看可用Governor列表、动态切换调度模式以及多Cluster架构下的统一 阅读详情

相关推荐

LSTM模型股价波动率预测(含Python代码)

源代码文件可在gzh’finance褪黑素'回复【24012203】获取。

celiaweiwei的博客 3775

Hibernate的七种映射关系之七种关联映射(一)

     关联映射就是将关联关系映射到数据库里,在对象模型中就是一个或多个引用。     一、Hibernate多对一关联映射:就是在“多”的一端加外键,指向“一”的一端。   比如多个学生对应一个班级,多个用户对应一个级别等等,都是多对一关系。      1、“多”端实体加入引用“一”端实体的变量及getter,setter方法。   比如说多个学生对应一个班级,在学生实体类加入:p...

weixin_34239169的博客 220

手把手教你用STM32F103实现CAN总线双机通信(基于CubeMX+HAL库)

本文详细介绍了基于STM32F103和STM32CubeMX工具实现CAN总线双机通信的完整流程。文章重点解析了CAN总线在嵌入式物联网应用中的优势,并深入讲解了波特率计算、过滤器配置、接收中断处理等关键细节,提供了实用的代码框架和可靠传输方案,帮助开发者规避常见陷阱,构建稳定的工业级通信系统。

weixin_29193259的博客 480

Hibernate关联映射(非常详细)

在前面的学习中,我们所涉及的都是基于单表的操作,但在实际的开发过程中,基本上都是同时对多张表的操作,且这些表都存在一定的关联关系。 Hibernate 是一款基于 ORM 设计思想的框架,它将关系型数据库中的表与我们 Java 实体类进行映射,表中的记录对应实体类的对象,而表中的字段对应着实体类中的属性。Hibernate 进行增删改查等操作时,不再直接操作数据库表,而是对与之对应的实体类对象进行处理。那么,Hibernate 是如何处理多表关联问题的呢?本节我们针对此问题进行介绍。 关联映射 在关系型

youandme520的专栏 2128

【实用工具】QQ自动发消息

程序下载:蓝奏云 源代码: #include<Windows.h> #include<bits/stdc++.h> #include<conio.h> using namespace std; void HideWindow() { HWND hwnd; hwnd=FindWindow("ConsoleWindowClass",NULL); if(hwnd) ShowWindow(hwnd,SW_HIDE); return; } int main() { pri

liuzich的博客 2644

MAX30102心率血样模块在STM32F103芯片的程序说明

我希望你已经安装好了Keil MDK5这个软件,也安装了M3内核,可以编译一些STM32F103的一些项目下载程序后步骤: 1-按照下图找到IIC.uvprojx并打开(途中唯一绿色那个图标) 2-编译一次 3-确保0错误,0警告,下图所示 4-点击目标选项,然后找到STM32F103C8,再点debug–CMSIS****(我实际用的JTAG,用不了,选择这个CMSIS****即可)下图所示 5-下图所示,看看你的串口找到了没,找到了就点左下角的OK 6-按图上传到开发板 7-MAX30102接线方法

weixin_51357422的博客 5801

Hibernate表关系映射之一对多映射

一、基本概述 在表中的一对多,是使用外键关联,通过一张表的一个键另一个表的外键来建立一多关系;而在类中表示为一个类中有一个集合属性包含对方类的很多对象,而在另一个类中,只包含前述类的一个对象,从而实现一对多关系的建立! 而在Hibernate中采用的是Set类型集合,使用<one-to-many>和<many-to-one>来实现。 对于一对多的映射关系可以分...

weixin_33840661的博客 256

Ansys Zemax实战:5步搞定多模光纤耦合效率优化(附IMAE操作数详解)

本文详细介绍了使用Ansys Zemax优化多模光纤耦合效率的5个关键步骤,包括几何图像分析设置、IMAE操作数应用及偏振效应处理。通过实战案例解析,帮助工程师快速掌握光纤耦合效率提升技巧,特别针对IMAE操作数的配置保存机制和菲涅尔损耗控制进行深度讲解。

potato的博客 690

Hibernate的关系映射

Hibernate的关系映射 一、Hibernate的概念 在了解什么是Hibernate之前我们先来看看什么是ORM呢? 1.(对选哪个-关系映射)ORM-Object Relational Mapping的概念 对象-关系映射(Object Relational Mapping,简称ORM),是随着面向对象的软件开发方法发展而产生的。用来把域模型表示的对象映射到关系数据模型对应的数据库结构中去...

lkfmiaomiao的博客 273

二十八.国民技术MCU开发之UID获取与应用

在国民NT MCU中均有一个96位和128位的唯一设备标识符,其中UCID128 位, UID 为 96 位。手册中描述的作用是:通常用来做为序列号或作为密码,在编写闪存时,将此唯一标识与软件加解密算法相结合,进一步提高代码在闪存存储器内的安全性,也可用于激活带安全功能的自举程序(SecureBootloader)。UCID 和 UID,遵守国民技术芯片序列号定义,它包含芯片生产及版本相关信息。

AIoT深度探索者 | 嵌入式系统架构师 深耕物联网(IoT)与人工智能(AI)融合技术,聚焦​​边缘计算、图像开发、低功耗通信协议​​,致力于智能硬件,关注我获取最新技术文章信息与海量资源~ 1677

用ChatGPT 5.5掌握SCI的4个实操润色技巧,论文质量极速提升!(附提示词)

ChatGPT 5.5的发布,在学术写作中的应用变得更加精准和安全,通过正确的使用方法,不仅可以改善语法与表达,让论文达到SCI发表水准,还能最大程度保留作者原意,将AIGC检测率控制在低风险区间。可以帮大家省下大量纠结语法、梳理逻辑的时间,在保证润色质量的同时,兼顾AIGC检测的合规要求,为论文投稿成功率提供实实在在的提升。通过智能调整语序、优化用词和句式结构,该方法能够在保留学术质感的同时,使文章表达更自然、贴近人工撰写的风格,从而避免文字过于程式化,提升论文整体可读性和表达的个性化特征。

智能AI让学术科研更容易 64

闲来无事,复习复习以前的东西---hibernate中的关联映射图解----一对一

1. 单向------  一对一的主键关联映射 java文件:    hbm.xml文件:   数据库表:   测试代码:     注意:一对一主键关联映射让两个对象的id保持相同,这样可以避免多于的字段被创建,标签的含义指示hibernate怎么加载它的关联对象,默认根据主键加载,onstrained="true"表明通过一个外键引用对主键进行约束,换

java_min的专栏 553

【图像去噪】论文精读:Restormer: Efficient Transformer for High-Resolution Image Restoration

论文题目:Restormer: Efficient Transformer for High-Resolution Image Restoration —— Restormer:用于高分辨率图像恢复的高效变压器高效Transformer模型用于图像恢复!由于卷积神经网络 (CNN) 在从大规模数据中学习可泛化的图像先验方面表现良好,因此这些模型已广泛应用于图像恢复和相关任务。最近,另一类神经架构 Transformer 在自然语言和高级视觉任务中显示出显着的性能提升。

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 1526

闲来无事,复习复习以前的东西---hibernate中的关联映射图解 ---- 一对多

一对多关联映射利用了多对一关联映射原理: 多对一关联映射:在多的一端加入一个外键指向一的一端,它维护的关系是多指向一。 一对多关联映射:在多的一端加入一个外键指向一的一端,它维护的关系是一指向多。 总结:由上可以看出,一对多和多对一的映射策略是一样的,只是站的角度不同,维护关系方不同罢了。   1. 单向 java文件:     hbm.xml文件: 测试代码: 保存

java_min的专栏 649

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

闲来无事,复习复习以前的东西---hibernate中的关联映射图解----一对一唯一外键

1. 单向 java 代码:    hbm.xml文件: 测试代码:   注意:         1.  一对一外键关联映射是多对一关联映射的特例。         2. 可以采用标签,指定多的一端的 unique=true,这样就限制了多的一端的多重新为一,通过这种手段映射一对一唯一外键关联映射。   2. 双向 模型不变,Person类不变,只要修改IdCa

java_min的专栏 484

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

闲来无事,复习复习以前的东西---hibernate中的关联映射图解 ---- 多对多

1. 单向 java文件:    hbm.xml文件: 数据库方面:   2. 双向 在上面的基础上只要修改对象Role即可,如下 java文件: hbm.xml 注意:在多对多关联关系映射中,需要借助第三张来维护两个对象之间的关系

java_min的专栏 646

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

闲来无事,复习复习以前的东西---hibernate中的关联映射图解----多对一

1. 多对一单向管理映射 java文件:     hbm.xml文件: 生成的表: 语句中的外键关联如下: 测试代码: 注意:        会在多的一端加入一个外键,指向一的一端的主键,这个外键是由中的column属性定义的,如果忽略了这个属性那么默认的外键与实体属性一致。

java_min的专栏 530

闲来无事,复习复习以前的东西---hibernate中的关联映射图解 ---- 组件映射

1. hibernate中,component是某个实体的逻辑组成部分,它与实体的根本区别是没有对象主键,component可以成为值对象。 采用component映射的好处:它实现了对象模型的细粒度划分,层次会更分明,复用率会更高。 java代码:   hbm.xml文件: 数据库表:

java_min的专栏 567

闲来无事,复习复习以前的东西---hibernate中的关联映射图解 ---- 复合主键

1. 复合主键的相关属性要放到一个单独的类中。     (1) 此类必须实现序列化接口     (2) 覆写hashcode和equals方法(用户比较对象是不是同一个对象) java代码:    hbm.xml文件: 数据库表: 测试代码: 结果:

java_min的专栏 507

hibernate--关系映射归纳和总结

前言: hibernate关系映射十分重要,对于掌握hibernate是必备的知识,关系映射分为一对一 一对多 多对一 多对多  看起来关系关系复杂,但其实了解其中原理就可以灵活自如运用。 在了解详细分类之前,有一些点和关键系必须掌握其意义: cascade关键词:表示级联包括add update delete 一般情况不使用 不好。 作用:一般在保存对象时 需要先显

nupt_Wang的专栏 1554

hibernate中的关系映射

Hibernate中的关系可以分为:单向关系和双向关系。顾名思义说的是从一方是否可以访问另一方,对应到数据库中也就是根据一方的值是否也可以检索出另一方的值了。 单向关联可以分为: &lt;!--[if !supportLists]--&gt;l         &lt;!--[endif]--&gt;单向1-1 &lt;!--[if !supportLists]--&gt;l    ...

194

Hibernate入门第九讲——数据库中表与表之间的关系

Hibernate关联映射——对象的三种关系Hibernate框架基于ORM设计思想,它将关系型数据库中的表与我们java中的类进行映射,一个对象就对应着表中的一条记录,而表中的字段对应着类中的属性。数据库中表与表之间存在着三种关系,也就是系统设计中的三种实体关系。下面进行简单阐述。一对一创建表的原则有两种: 唯一外键对应 在任意一方添加一个外键来描述对应关系。如下图所示: 或者 主键对应

李阿昀的博客 6237

hibernate中的几种关系映射

http://wenku.baidu.com/link?url=RoS_zF8BaxKuYARDdfaYKDajJ2vO_vz5EqFxPqyUOOljS7MzI5ERHHz-v9u6oGKRqj5cWwVl1_NvtfgNf8zs7n_ctTSOna9rRH8OTYJgTF_

hudawei2014的专栏 336

08-hibernate中的几种关系映射

hibenrate的一对多(单向/双向)、多对多、继承映射

zmt0104的博客 321

SSH:Hibernate框架(七种关联关系映射及配置详解)

概念          基本映射是对一个实体进行映射,关联映射就是处理多个实体之间的关系,将关联关系映射到数据库中,所谓的关联关系在对象模型中有一个或多个引用。   分类                                关联关系分为上述七种,但是由于相互之间有各种关系,可以简化,例如:多对一与一对多映射,只是侧重的角度不对而已。

流年少年 1万+

JPA学习总结

前言     最近在做一个项目的时候因为牵涉到要对数据库的操作,在最开始实现的时候采用了直接的JDBC技术。在实现的时候,发现虽然能够实现所需要的功能,但是具体的实现比较繁琐,而且牵涉到数据库和对象实体间元素的映射,稍微一点点修改就容易带来问题。于是在闲暇时间的时候用JPA重新做了一个实现。和纯JDBC的实现方式不同,JPA本身就是一种ORM(对象关系映射)的实现规范。我们可以通过annot...

点缀星辰 413
上一篇: 闲来无事,复习复习以前的东西---hibernate中的关联映射图解 ---- 多对多
下一篇: 闲来无事,复习复习以前的东西---hibernate中的关联映射图解 ---- 组件映射
java_min
博客等级 码龄18年 61粉丝 161原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值