`

十三、多对多

 
阅读更多

1    单向关联:

关系模型(Teache多对多Student),从Teacher这一端能关联到students.
Teacher(id,name,students)多
Student(id,name)多
Set<Student> students=new HashSet<Student>()
在Teacher那一端配置
例如:老师和学生的关系,老师需要知道自己教了哪些学生
数据库:生成中间表
Annotation:@Many2Many
Teacher类中写:
private Set<Student> students = new HashSet<Student>();
@ManyToMany //多对多关联 Teacher是主的一方 Student是附属的一方
@JoinTable(name="t_s", //指定中间表表名
    joinColumns={@JoinColumn(name="teacherid")},//本类主键在中间表生成的
对应字段名
        inverseJoinColumns={@JoinColumn(name="studentid")}//对方类主键在中间表
生成的对应字段名
    )
    public Set<Student> getStudents(){……}


2    双向关联:

    多对多双向配置只需要在两端类进行配置就才可以.
    关系模型(Teache多对多Student)
    Teacher(id,name,students)多
    Student(id,name,teachers)多
Set<Student> students = new HashSet<Student>()
Set<Teacher> teachers = new HashSet<Teacher>();

老师知道自己教了哪些学生,学生也知道教自己的有哪些老师
数据库:生成中间表
Annotation:
在Teacher这一端的students上配置
@ManyToMany
    @JoinTable(name="t_s",
        joinColumns={@JoinColumn(name="teacher_id")},
        inverseJoinColumns={@JoinColumn(name="student_id")}
        )
在Student一端的teachers只需要配置
@ManyToMany(mappedBy="students")
注意:mappedBy 与 @JoinTable等一类的配置要分开,不然表字段可能乱

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    十三星瓢虫和多异瓢虫对苜蓿斑蚜的捕食作用研究

    十三星瓢虫和多异瓢虫对苜蓿斑蚜的捕食作用研究,魏龙,易永红,本文研究了十三星瓢虫(Hippodamia tredecimpunctata)和多异瓢虫(Hippodamia variegata)个体间的干扰作用对捕食作用的影响,以及两种瓢虫在苜蓿斑蚜

    广发证券_20170330_广发证券多因子Alpha系列报告之三十:个股配对思想在因子策略中的应用.pdf

    股票收益率在长期存在反转的趋势, 即在过去收益率低(高)的股票在 未来有着较好(差)的市场表现,常见的反转因子有“N 月股价反转”“最高价 长度”“容量比”等,反转因子的策略在历史上都有较好的表现。

    三十多个天空盒图片

    三十多个天空盒子图片,有些图片没有down.jpg(有地面不需要啦)。 如果你开发天空盒程序,肯定对你有用啦。

    多媒体教室设备情况统计表.doc

    多媒体教室设备情况统计表 "序号 "实训室名称 "设备名称 "规格..."20*10cm "20个 " "3 "多媒体教室面积 "120平方米 " 二〇一三年三月十八日 ----------------------- 多媒体教室设备情况统计表全文共1页,当前为第1页。

    平煤股份十三矿瓦斯突出主控地质因素分析

    平煤股份十三矿瓦斯含量分布变化大,构造较复杂,前人对其瓦斯突出和影响因素等做过很多研究。通过对平煤股份十三矿瓦斯突出地质因素的系统研究,得出以下结论:褶皱和逆断层构造叠合发育区域是瓦斯突出的高发区,褶皱和...

    第十三届蓝桥杯大赛软件赛省赛_CC

    对同一题目,选手可多次提交答案,以最后一次提交的答案为准。 选手必须通过浏览器方式提交自己的答案。选手在其它位置的作答或其它 方式提交的答案无效。 试题包含“结果填空”和“程序设计”两种题型。 结果填空题...

    二十三种设计模式迷你手册

    这时B r i d g e 模式使你可以对不同的抽象接口和实现部分进行组合,并分别对它们进行扩充。 对一个抽象的实现部分的修改应对客户不产生影响,即客户的代码不必重新编译。 (C + +)你想对客户完全隐藏抽象的实现...

    三十多年来许衡研究述评

    改革开放三十多年来,对元代大儒和重臣许衡的研究逐渐受到了学术界的重视,相关论著不断出现,审视角度新广,研究全面展开。无论是文献史料的整理出版,还是关于许衡生卒里籍考辨,抑或是对其在儒学、理学、教育、天文历法...

    基于通信基站的三维室内定位matlab

    问题三,根据给定的5组对处于移动过程中的终端采集到的TOA数据(每组数据只记录一个终端的TOA,并且是这一个终端在运动轨迹中多个位置上的TOA数据)。首先计算出运动轨迹上每个点距离所有基站的距离,然后计算出所有...

    编程狂人第十三期

    编程狂人是推酷网旗下的周刊,每周一发布,并且同步发布pdf离线版本,内容以开发技术,编程语言,框架等为主,并且配有一周IT业界新闻!...一个对 Dijkstra 的采访视频 【开源访谈】ECharts 作者 林峰 访谈实录

    多位十进制计算器设计课设.rar

    (2)可以进行多位十进制数以内的运算(包括加,减,乘,除,幂次方,对数,三角函数等功能),如果计算结果超过显示范围,则屏幕显示E。 (3)可显示输入时的数字及结果 (4)设计控制电路总体方案; (5)电路的...

    CCKS2022竞赛中任务十三采用方法.zip

    多线程支持: Java内置了对多线程的支持,允许程序同时执行多个任务。这对于开发需要高并发性能的应用程序(如服务器端应用、网络应用等)非常重要。 自动内存管理(垃圾回收): Java具有自动内存管理机制,通过...

    多媒体技术定义.doc

    多媒体技术定义 多媒体技术定义 多媒体技术(Multimedia Technology)是利用计算机对文本、图形、图像、声音、动画、视频等多种信息综合处 理、建立逻辑关系和人机交互作用的技术。 真正的多媒体技术所涉及的对象是...

    多参数水文动态监测智能预警系统的综合应用

    南屯煤矿下组煤开采受底板十三灰、十四灰和奥灰承压水威胁,自2003年以来在地面和井下进行了下组煤补充勘探,健全了水文地质观测网。为了掌握各含水层水文地质参数,研究应用了多参数水文动态监测预警系统--KJ402矿井...

    三十分钟掌握STL doc文档

    三十分钟掌握STL 这是本小人书。原名是《using stl》,不知道是谁写的。不过我倒觉得很有趣,所以化了两个晚上把它翻译出来。我没有对翻译出来的内容校验过。如果你没法在三十分钟内觉得有所收获,那么赶紧扔了它。...

    多功能在线考试系统改进版源码(毕业设计c#)

    本系统开发环境是VS2005+SQL2000,是我在实习单位时独立做的一个项目,三层架构,参考了多个考试系统而开发的,题型有单选题、多选题、判断题、填空题和问答题(或者也可以说是简答题)。 说一下我的开发体会: 1、从...

    二十三种设计模式UML类图

    除了作为对遗留代码的改进的方法,另一 大意义在于,可以让我们在写程序的时候可以不需事先考虑太多的代码组织问题,当然这其中也包括了应用模式的问题。尽管大多数开发者都已经养成了写代码前先 从设计开始的习惯,...

    二十三种设计模式【PDF版】

    主要用来对语言的分析,应用机会不多. 设计模式之 Visitor(访问者) 访问者在进行访问时,完成一系列实质性操作,而且还可以扩展. 设计模式引言 设计面向对象软件比较困难,而设计可复用的面向对象软件就更加困难。...

    13.第十三章 文件.txt

    第十三章 文件 对数据的管理无论是用数组还是链表,都是存储在内存中的,程序结束后都会丢失,下一次运行程序时,要重新输入或运算生成数据。要把程序运行的数据保存起来以便下次运行继续使用,在计算机中持久保存...

    C#设计模式 + 二十三种设计模式迷你手册

    设计模式之于设计,好比套路之于武术。“新手”要一个接一个地学习模式,“好手”能够活...二十三种设计模式迷你手册.chm 是对各种设计模式的简要汇总。 目前网上有很多资源下载下来都不可用,本资源保证可以正常使用!

Global site tag (gtag.js) - Google Analytics