Java中多对多映射关系
多对对的映射,可以用学生和课程进行演示。一个学生可以选择多个课程,一个课程又对应了多个学生
定义学生类

class Stu{
private String name;
private String num;
private Course[] course;
public Stu() {}
public Stu(String name,String num) {
this.name = name;
this.num = num;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getNum() {
return num;
}
public void setNum(String num) {
this.num = num;
}
public Course[] getCourse() {
return course;
}
public void setCourse(Course[] course) {
this.course = course;
}
public String getInfo() {
return "姓名 :"+name+" 学号 :"+num;
}
}

定义课程 类

class Course{
private String name;
private Stu[] stu;
public Course() {}
public Course(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Stu[] getStu() {
return stu;
}
public void setStu(Stu[] stu) {
this.stu = stu;
}
public String getInfo() {
return "课程 :"+name;
} }

在main方法测试
首先定义Stu和Course对象,分别有三个

Stu s1 = new Stu("张三","001");
Stu s2 = new Stu("李四","002");
Stu s3 = new Stu("王五","003"); Course c1 = new Course("Java");
Course c2 = new Course("php");
Course c3 = new Course("Python");

设置彼此的关系,每个对象都有多个对象对应

//设置学生和课程的关系
s1.setCourse(new Course[]{c1,c2});
s2.setCourse(new Course[]{c1,c3});
s3.setCourse(new Course[]{c2,c3}); //相应的课程设置与学生的关系
c1.setStu(new Stu[]{s1,s2});
c2.setStu(new Stu[]{s1,s3});
c3.setStu(new Stu[]{s2,s3});

根据学生,获取课程信息
System.out.println(s1.getInfo()+" 同学选择的课程有");
for(int i=0; i<s1.getCourse().length; i++) {
System.out.println(s1.getCourse()[i].getInfo());
}
运行
根据课程,获取学生信息
System.out.println(c2.getInfo()+" 选择这门课程的学生信息");
for(int i=0; i<c2.getStu().length; i++) {
System.out.println(c2.getStu()[i].getInfo());
}
运行
Java中多对多映射关系的更多相关文章
- hibernate笔记--单(双)向的多对多映射关系
在讲单向的多对多的映射关系的案例时,我们假设我们有两张表,一张角色表Role,一张权限表Function,我们知道一个角色或者说一个用户,可能有多个操作权限,而一种操作权限同时被多个用户所拥有,假如我 ...
- hibernate(四) 双向多对多映射关系
序言 莫名长了几颗痘,真TM疼,可能是现在运动太少了,天天对着电脑,决定了,今天下午花两小时去跑步了, 现在继上一章节的一对多的映射关系讲解后,今天来讲讲多对多的映射关系把,明白了一对多,多对多个人感 ...
- Hibernate学习(四)———— 双向多对多映射关系
一.小疑问的解答 问题一:到这里,有很多学习者会感到困惑,因为他不知道使用hibernate是不是需要自己去创建表,还是hibernate全自动,如果需要自己创建表,那么主外键这种设置也是自己设置吗? ...
- Hibernate中的一对一映射关系
Hibernate中的一对一映射关系有两种实现方法(单向一对一,和双向一对一)(一对一关系:例如一个department只能有一个manager) 单向和双向有什么区别呢??例如若是单向一对一,比如在 ...
- java框架篇---hibernate(多对多)映射关系
以学生和老师为例的来讲解多对多映射. 实体类: Student package cn.itcast.g_hbm_manyToMany; import java.util.HashSet; import ...
- Hibernate的多对多映射关系
example: 老师(teacher)和学生(Student)就是一个多对多的关系吧?老师可以有多个学生,学生也可以由多个老师,那在Hibernate中多对多是怎样实现的呢?? 在Hibernate ...
- Hibernate(五)之一对多&多对一映射关系
既然我们讲到了一对多和多对一关系,必然要提到多表设计的问题.在开发中,前期需要进行需求分析,希求分析提供E-R图,根据ER图编写表结构. 我们知道表之间关系存在三种: 一对多&多对一:1表(主 ...
- flask中 多对多的关系 主从表之间的的增删改查
# 角色表模型class Role(db.Model): r_id = db.Column(db.Integer, primary_key=True) r_name = db.Column(db.St ...
- 数据表与简单java类——多对多映射
给定一张Meber和Product表,得到如下信息: 1.获取一个用户访问的所有商品信息 2.获取一个商品被哪些用户浏览过的信息 package Mapping_transformation; cla ...
随机推荐
- zabbix server的Discover功能,实现zabbix agent 大批量的自动添加,并链接到指定的模版(3)
一.需求 zabbix 服务器可以手动加入zabbix-agent客户端,对于少量的机器,这没有什么.但到了线上,我们有大量的服务器需要监控时,如果再一个个的手动加的话,工作量势必会增加很多.这时,z ...
- IDA Pro 权威指南学习笔记(十三) - 基本代码转换
IDA提供的代码转换包括: 1.将数据转换为代码 2.将代码转换为数据 3.指定一个指令序列为函数 4.更改现有函数的起始或结束地址 5.更改指令操作数的显示格式 代码显示选项 通过 Options ...
- Android Studio 无法预览布局问题:com/android/util/PropertiesMap
应该是API版本太高,换成较低的就好了 API24,无法预览 换成22就没事了 Android Studio要比Eclipse好用很多,虽然Eclipse现在可以直接安装Android开发板,但AS界 ...
- 调试正常,签名打包提示 "x应用未安装。"
今天在工作的时候遇到一个奇葩的问题,开发一个新项目,然后在AS中调试运行都是一切正常.打包签名后,缺无法安装,提示"x应用未安装."如图所示. 网上找了好多方法,比如,签名的时候要 ...
- Python的索引迭代
Python中,迭代永远是取出元素本身,而非元素的索引. 对于有序集合,元素确实是有索引的.有的时候,我们确实想在 for 循环中拿到索引,怎么办? 方法是使用 enumerate() 函数: > ...
- href 和src 的区别
转载地址:http://www.58maisui.com/2016/08/03/30/?utm_source=tuicool&utm_medium=referral href和src的区别: ...
- 用django框架开发一个B2C购物网站的基本流程和用到的知识点总结1
开发流程 开发模式采用前后端分离模式,作为后端开发人员我们只关注后端业务逻辑开发: 省略项目框架搭建文件的配置部分.... 一:用户部分 在项目开发中我们要用到用户模型类User,Django认证系统 ...
- Using Mono DLLs in a Unity Project
[Using Mono DLLs in a Unity Project] The path to the Unity DLLs will typically be: 一个生成dll的例子如下: mcs ...
- .net中delegate的使用
js中的写法: var GetEntityList = function(pParameter){ var list =[]; return list; }; var aEntityList = Ge ...
- windows下python安装Numpy和Scipy模块
安装 numpy: 去 http://sourceforge.net/projects/numpy/files/latest/download?source=files 下载相应的exe安装文件. 安 ...