java中的多对多映射
来源:互联网 发布:叙永网络歌手大赛 编辑:程序博客网 时间:2024/05/20 13:09
package cn.mldn.orm;
//通过一个课程,找到参加该课程所有的学生
//通过一个学生,找到所有参加所有课程
public class ManyToManyDemo {
public static void main(String[] args) {
Student stu1=new Student(101, "张三", 18);
Student stu2=new Student(102, "李四", 19);
Student stu3=new Student(103, "王五", 20);
Course course1=new Course(1, "操作系统", 4);
Course course2=new Course(2, "微机原理", 4);
Course course3=new Course(3, "C++", 4);
//1:设置关系
StudentCourse studentCourse1=new StudentCourse(stu1,course1,70);
StudentCourse studentCourse2=new StudentCourse(stu2,course2,80);
StudentCourse studentCourse3=new StudentCourse(stu3,course3,90);
stu1.setStudentCourses(new StudentCourse[]{studentCourse1, studentCourse2});
stu2.setStudentCourses(new StudentCourse[]{studentCourse2, studentCourse3});
stu3.setStudentCourses(new StudentCourse[]{studentCourse1,studentCourse2, studentCourse3});
course1.setStudentCourses(new StudentCourse[]{studentCourse1, studentCourse2});
course2.setStudentCourses(new StudentCourse[]{studentCourse1, studentCourse3});
course3.setStudentCourses(new StudentCourse[]{studentCourse1,studentCourse2, studentCourse3});
//2:获取关系
System.out.println("-----------通过学生查询到课程信息,以及课表---------------");
System.out.println(stu1);
for(int x=0;x<stu1.getStudentCourses().length;x++)
{
System.out.println("\t--"+stu1.getStudentCourses()[x]);
}
System.out.println("-----------通过课程查询到课程信息,以及课表---------------");
System.out.println(course2);
for(int x=0;x<course2.getStudentCourses().length;x++)
{
System.out.println("\t--"+course2.getStudentCourses()[x]);
}
System.out.println("-----------根据课表查询到课表中的所有课程和学生信息---------------");
System.out.println("\t--"+studentCourse3);
System.out.println("\t学生信息--"+studentCourse3.getStudent());
System.out.println("\t课程信息--"+studentCourse3.getCourse());
}
}
//学生表
class Student
{
private int stuid;
private String name;
private int age;
private StudentCourse[] studentCourses;//学生课程信息
public Student(int stuid, String name, int age) {
super();
this.stuid = stuid;
this.name = name;
this.age = age;
}
public StudentCourse[] getStudentCourses() {
return studentCourses;
}
public void setStudentCourses(StudentCourse[] studentCourses) {
this.studentCourses = studentCourses;
}
@Override
public String toString() {
return "Student [stuid=" + stuid + ", name=" + name + ", age=" + age + "]";
}
}
//课程表
class Course
{
private int cid;
private String name;
private int credit;//学分
private StudentCourse[] studentCourses;//学生课程信息
public Course(int cid, String name, int credit) {
super();
this.cid = cid;
this.name = name;
this.credit = credit;
}
public StudentCourse[] getStudentCourses() {
return studentCourses;
}
public void setStudentCourses(StudentCourse[] studentCourses) {
this.studentCourses = studentCourses;
}
@Override
public String toString() {
return "Course [cid=" + cid + ", name=" + name + ", credit=" + credit + "]";
}
}
//学生选课表
class StudentCourse
{
private Student student;
private Course course;
private double score;
public StudentCourse(Student student, Course course, double score) {
super();
this.student = student;
this.course = course;
this.score = score;
}
public Student getStudent() {
return student;
}
public void setStudent(Student student) {
this.student = student;
}
public Course getCourse() {
return course;
}
public void setCourse(Course course) {
this.course = course;
}
@Override
public String toString() {
return "StudentCourse [student=" + student + ", course=" + course + ", score=" + score + "]";
}
}
//通过一个课程,找到参加该课程所有的学生
//通过一个学生,找到所有参加所有课程
public class ManyToManyDemo {
public static void main(String[] args) {
Student stu1=new Student(101, "张三", 18);
Student stu2=new Student(102, "李四", 19);
Student stu3=new Student(103, "王五", 20);
Course course1=new Course(1, "操作系统", 4);
Course course2=new Course(2, "微机原理", 4);
Course course3=new Course(3, "C++", 4);
//1:设置关系
StudentCourse studentCourse1=new StudentCourse(stu1,course1,70);
StudentCourse studentCourse2=new StudentCourse(stu2,course2,80);
StudentCourse studentCourse3=new StudentCourse(stu3,course3,90);
stu1.setStudentCourses(new StudentCourse[]{studentCourse1, studentCourse2});
stu2.setStudentCourses(new StudentCourse[]{studentCourse2, studentCourse3});
stu3.setStudentCourses(new StudentCourse[]{studentCourse1,studentCourse2, studentCourse3});
course1.setStudentCourses(new StudentCourse[]{studentCourse1, studentCourse2});
course2.setStudentCourses(new StudentCourse[]{studentCourse1, studentCourse3});
course3.setStudentCourses(new StudentCourse[]{studentCourse1,studentCourse2, studentCourse3});
//2:获取关系
System.out.println("-----------通过学生查询到课程信息,以及课表---------------");
System.out.println(stu1);
for(int x=0;x<stu1.getStudentCourses().length;x++)
{
System.out.println("\t--"+stu1.getStudentCourses()[x]);
}
System.out.println("-----------通过课程查询到课程信息,以及课表---------------");
System.out.println(course2);
for(int x=0;x<course2.getStudentCourses().length;x++)
{
System.out.println("\t--"+course2.getStudentCourses()[x]);
}
System.out.println("-----------根据课表查询到课表中的所有课程和学生信息---------------");
System.out.println("\t--"+studentCourse3);
System.out.println("\t学生信息--"+studentCourse3.getStudent());
System.out.println("\t课程信息--"+studentCourse3.getCourse());
}
}
//学生表
class Student
{
private int stuid;
private String name;
private int age;
private StudentCourse[] studentCourses;//学生课程信息
public Student(int stuid, String name, int age) {
super();
this.stuid = stuid;
this.name = name;
this.age = age;
}
public StudentCourse[] getStudentCourses() {
return studentCourses;
}
public void setStudentCourses(StudentCourse[] studentCourses) {
this.studentCourses = studentCourses;
}
@Override
public String toString() {
return "Student [stuid=" + stuid + ", name=" + name + ", age=" + age + "]";
}
}
//课程表
class Course
{
private int cid;
private String name;
private int credit;//学分
private StudentCourse[] studentCourses;//学生课程信息
public Course(int cid, String name, int credit) {
super();
this.cid = cid;
this.name = name;
this.credit = credit;
}
public StudentCourse[] getStudentCourses() {
return studentCourses;
}
public void setStudentCourses(StudentCourse[] studentCourses) {
this.studentCourses = studentCourses;
}
@Override
public String toString() {
return "Course [cid=" + cid + ", name=" + name + ", credit=" + credit + "]";
}
}
//学生选课表
class StudentCourse
{
private Student student;
private Course course;
private double score;
public StudentCourse(Student student, Course course, double score) {
super();
this.student = student;
this.course = course;
this.score = score;
}
public Student getStudent() {
return student;
}
public void setStudent(Student student) {
this.student = student;
}
public Course getCourse() {
return course;
}
public void setCourse(Course course) {
this.course = course;
}
@Override
public String toString() {
return "StudentCourse [student=" + student + ", course=" + course + ", score=" + score + "]";
}
}
阅读全文
0 0
- java中的多对多映射
- Java中的[多对多]映射关联关系
- Sqlalchemy中的多对多映射
- hibernate关联映射中的多对多
- Hibernate中的基本映射和多对一关联映射
- Java中的一对多映射
- Java- Hibernate 多对多关系映射
- 简单Java类多对多映射
- Java- Hibernate 多对一关系映射
- 多对多映射
- 多对多映射
- 多对多映射
- 多对一映射
- 多对一映射
- mybatis中的高级映射一对一、一对多、多对多
- JPA中的多对多和联合主键映射
- hibernate中的关联映射图解 ---- 多对多
- 多对一 一对多 在实体中的 映射
- 新闻客户端
- (开源)基于vue, react, node.js, go开发的微商城(含微信小程序)
- 截断二进制指数退避算法
- java 数组 直接选择排序
- 二叉排序树查找指定区间的值
- java中的多对多映射
- 547. Friend Circles
- 文件操作_创建_读_写_复制文件
- Java的断言
- Android中常用布局及Androd Studio快捷键
- 一个hibernate项目的环境搭建
- ELF中与动态链接相关的段
- Deep Reinforcement Learning 基础知识(DQN方面)
- Sicily 1024. Magic Island