`

十二、多对一与一对多

 
阅读更多

 1    多对一单向关联

实体模型(User多对一Group)
User(id,name,group)多
Group(id,name)一
数据库表设计:在多方加外键
错误做法:在一方加冗余

annotaion: @Many2One
只需要在多的一端User属性group进行注解配置
@ManyToOne //多对一关联 User是多的一方 Group是一的一方
@JoinColumn(name="groupid") //指定User表中生成与Group对应的字段名
    public Group getGroup() {
        return group;
    }

2    一对多单向关联

模型(group一对多user)
Group(id,name,users)一
User(id,name)多
设计时在一的这一端存在着多的集合,生成的数据库表通常是在多的一端生成外键.
Set<User> users = new HashSet<User>();
类:在一的一方存在多方的集合
数据库表同上
Annotation:@One2Many
在一的这一端Group端users属性上进行注解配置
@OneToMany //一对多关联 Group是一的一方 User是多的一方
@JoinColumn(name="groupid") //指定User表中生成与Group对应的字段名 注意此处与多对一配置方式不同
Hibernate默认将OneToMany理解为ManyToMany的特殊形式,如果不指定生成的外键列@JoinColumn(name="groupId"),
则会默认生成多对多的关系,产生一张中间表。

3    一对多(多对一)双向关联


一对多与多对一的双向关联是同一种情况.
关系模型(group一对多user)
Group(id,name,users)一
User(id,name,group)多
Set<User> users=new HashSet<User>()
配置规则:一般以多的一端为主,先配置多的一端
在多的一端User端配置group
@ManyToOne
@JoinColumn(name="groupid")
在一的一端Group端配置时,在users只需要加个mappedBy="groupid"
@OneToMany(mappedBy="group")

分享到:
评论

相关推荐

    人教小学一年级数学下练习十二PPT教案.pptx

    通过对【标题】"人教小学一年级数学下练习十二PPT教案.pptx"的分析,我们可以看到,这是一个小学一年级数学下练习十二的PPT教案,旨在帮助学生学习和巩固数学知识。 在【描述】中,我们可以看到,这个PPT教案的描述...

    伤脑筋的十二块TwelveBlock.exe

    《十二块》的特点在于:可用她填充体积与《十二块》总体积相等的各种空间(当然,构成此空间的各条边均应为长度等于“小立方体”边长整数倍的直线),而且其填充法(拼法)还不止一种(空间表面积越小,其拼法越多)...

    SHELL基础十二篇

    4. **重定向和管道**:重定向允许将命令的输出写入文件,如`command &gt; file`,而管道可以连接多个命令,如`command1 | command2`,使得前一个命令的输出作为后一个命令的输入。 5. **条件测试**:通过if-else语句...

    十二生肖配对表婚姻配对表-幸运匹配表.doc

    虽然这种生肖配对理论在现代社会中更多地被视为一种趣味性的参考,但它反映了中国传统文化中对于命运、缘分以及人际关系的理解。人们通常会结合双方的出生年份,通过生肖配对来探讨潜在的婚姻和谐程度,但这并不等同...

    十二生肖婚姻配对.doc

    总的来说,十二生肖婚姻配对是中国传统文化中的一种独特现象,它反映了人们对和谐生活的向往和对美好关系的追求。虽然现代婚姻观念更加注重个人选择和情感共鸣,但生肖配对的传统依然被许多人所关注和应用,为他们的...

    基于MATLAB的十二脉波整流与六脉波整流仿真电路的谐波比较.pdf

    这篇文章介绍了一项关于十二脉波整流与六脉波整流电路在谐波分析方面性能比较的仿真研究。研究通过MATLAB仿真平台搭建了十二脉波整流和六脉波整流的主回路,并分析了这两种整流电路的谐波含量。研究的主要目的在于...

    shell基础十二篇

    以下是对Shell基础十二篇的详细解析: 1. **文件安全与权限**:在Unix/Linux系统中,文件的安全性和权限至关重要。`chmod`用于改变文件或目录的权限,可以使用数字或符号方式设置。`suid`和`guid`分别代表设置用户...

    α-氯代十二酸经消除反应合成2-十二碳烯酸

    α-氯代十二酸是一种有机化合物,具有长链结构和氯原子官能团。在有机合成中,它可作为起始原料用于合成具有特定官能团的脂肪酸。传统的合成方法多采用昂贵的α-溴代酸和α-碘代酸作为原料,而本研究通过使用α-氯代...

    十二枚硬币测假(Java语言编写)

    首先,我们要理解问题的核心在于寻找一个算法,该算法能够在多次称量后确定假币的身份和其重量属性。这是一个典型的分治策略问题,我们可以将硬币分为若干组,通过比较它们的重量差异来缩小假币的范围。 Java程序...

    java-十二生肖娱乐系统

    多态性是另一个关键概念,它使得程序能够处理多种不同类型的对象,增加了代码的灵活性和可扩展性。例如,系统可能包含一个抽象的“生肖”类,然后每个具体的生肖(如“鼠”、“牛”等)都是这个基类的子类,它们共享...

    商业十二模型.pdf

    在分析“商业十二模型”这一文档时,我们首先注意到文中提及的几个核心概念:用户主权、连接器战略、互联网的消除距离作用、去中心化的未来趋势、企业价值模型、企业生命周期模型、企业能量模型、无形资产、成本优势...

    十二生肖运势微信小程序源码

    【十二生肖运势微信小程序源码】是一个专门为用户提供十二生肖运势查询功能的小程序源代码包。这个小程序源码设计小巧,便于安装和搭建,适合初学者和有经验的开发者快速理解和运用。通过此源码,我们可以深入学习和...

    正十二面体日历(2018年)

    根据文件信息,这里所涉及的知识点主要集中在制作一个正十二面体日历。由于文档内容包含大量的数字和日期,可以推测这些数字代表特定的日期,对应于2018年每个月的日期。同时,由于使用了LaTeX,可以看出文档的制作...

    晨读对韵(一至十二).doc

    【晨读对韵(三)】中,以自然现象和物体为对仗,如“繁对简,少对多,淅沥对滂沱”,让孩子感受自然的变化。接着,“珊瑚对玛瑙,河蚌对田螺”,引入了宝石和水生生物的知识。此外,“星妩媚,月婆娑,曲径对斜坡”...

    海通证券_20160628_海通证券选股因子系列研究(十二):“量”与“价”的结合.pdf

    ### 海通证券选股因子系列研究(十二):“量”与“价”的结合 #### 一、概述 本文档是海通证券发布的金融工程研究专题报告之一,主要探讨了“量”与“价”结合的选股因子在投资决策中的应用。报告通过分析股票在...

    探讨十二属相与中华文化.docx

    十二属相,又称十二生肖,是中国传统文化中独特的一部分,它涉及到民俗、历史、艺术和文化等多个领域。这一概念源于中国古代,至今已有超过两千年的历史,包括鼠、牛、虎、兔、龙、蛇、马、羊、猴、鸡、狗、猪十二种...

    柒瑞华丽十二格商业版

    购买"柒瑞华丽十二格商业版"的用户通常可以享受到更全面的服务,包括但不限于专业的技术支持、更新和升级服务,以及对版权的合法使用。 在压缩包文件"toplist_7ree"中,我们可以推测这可能是插件的主要代码文件或...

    成都市云计算应用与产业发展“ 十二五 ”规划纲要

    综上所述,成都市的云计算应用与产业发展“十二五”规划纲要,不仅反映了地方政府对前沿科技的敏锐洞察,更彰显了其推动创新、提升竞争力的决心。在云计算的引领下,成都正迈向智能城市的新时代,有望成为国内乃至...

    基于matlab实现的网格正弦十二面体.rar

    网格正弦十二面体是一种在计算几何和科学可视化中常用的多面体结构,它通过将三维空间分割成一系列规则的十二面体单元来构建复杂的几何模型。这种结构在物理模拟、流体动力学、地球科学等领域有广泛应用。MATLAB作为...

Global site tag (gtag.js) - Google Analytics