[align=center][b][size=xx-large]Hibernate应用Many2Many[/size][/b][/align]
[b][size=large]多对多(Teacher&Student 单/双向)[/size][/b]
Teacher类:
Student类:
最后可以从数据库中产生的表看出,数据库新建了两张表Teacher_Student和Student_Teacher来关联两个表。
[b][size=large]多对多(Teacher&Student 单/双向)[/size][/b]
Teacher类:
package com.sean.model.many2many;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.ManyToMany;
/**
* 多对多:老师
*
* @author Sean 2013-2-26
*
*/
@Entity
public class Teacher {
private int id;
private String name;
private Set<Student> pset = new HashSet<Student>();
@ManyToMany
public Set<Student> getPset() {
return pset;
}
public void setPset(Set<Student> pset) {
this.pset = pset;
}
@Id
@GeneratedValue
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
Student类:
package com.sean.model.many2many;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.ManyToMany;
/**
* 多对多:学生
*
* @author Sean 2013-2-26
*
*/
@Entity
public class Student {
private int id;
private String name;
private Set<Teacher> pses = new HashSet<Teacher>();
@ManyToMany
public Set<Teacher> getPset() {
return pses;
}
public void setPset(Set<Teacher> pses) {
this.pses = pses;
}
@Id
@GeneratedValue
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
最后可以从数据库中产生的表看出,数据库新建了两张表Teacher_Student和Student_Teacher来关联两个表。