单向关联java_[Java教程]多对多的单向关联

[Java教程]多对多的单向关联

0 2017-04-21 12:00:34

一个老师(Teacher)教多个学生(Student),一个学生(Student)可以有多名老师(Teacher),这就是一对一的关系,下面以这个例子为例进行配置:

Annotataion 配置:

Teacher:

1 package com.bjsxt.hibernate; 2 3 import java.util.HashSet; 4 import java.util.Set; 5 6 import javax.persistence.Entity; 7 import javax.persistence.GeneratedValue; 8 import javax.persistence.Id; 9 import javax.persistence.JoinColumn;10 import javax.persistence.JoinTable;11 import javax.persistence.ManyToMany;12 import javax.persistence.Table;13 14 @Entity15 @Table(name="t_teacher")16 public class Teacher {17 18 private Integer id;19 20 private String name;21 22 private Set students = new HashSet();23 24 @Id25 @GeneratedValue26 public Integer getId() {27 return id;28 }29 30 public void setId(Integer id) {31 this.id = id;32 }33 34 public String getName() {35 return name;36 }37 38 public void setName(String name) {39 this.name = name;40 }41 42 @ManyToMany43 @JoinTable(name="t_s",44 joinColumns={@JoinColumn(name="teacher_id")},45 inverseJoinColumns={@JoinColumn(name="student_id")}46 )47 public Set getStudents() {48 return students;49 }50 51 public void setStudents(Set students) {52 this.students = students;53 }54 55 }

Student:1 package com.bjsxt.hibernate; 2 3 import javax.persistence.Entity; 4 import javax.persistence.GeneratedValue; 5 import javax.persistence.Id; 6 import javax.persistence.Table; 7 8 @Entity 9 @Table(name="t_student")10 public class Student {11 private Integer id;12 13 private String name;14 15 @Id16 @GeneratedValue17 public Integer getId() {18 return id;19 }20 21 public void setId(Integer id) {22 this.id = id;23 }24 25 public String getName() {26 return name;27 }28 29 public void setName(String name) {30 this.name = name;31 }32 }

Teacher.hbm.<?mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

Student.hbm.1 2 "-//Hibernate/Hibernate Mapping DTD 3.0//EN" 4 "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> 5 6 7 8 9 10 11 12 13

上面两种方式,生成SQL的结果一样,生成顺序:

bc91bb04e6e9c61e24c974e4440db8f2.gif

jar链接: https://pan.baidu.com/s/1eSKKZ8Q 密码: puad

代码链接: https://pan.baidu.com/s/1bpxk8H5 密码: e7ku

本文网址:http://www.shaoqun.com/a/307513.html

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:admin@shaoqun.com。

0


版权声明:本文为weixin_33545930原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。