hibernate笔记-013-多对多双向映射

来源:互联网 发布:19s管理淘宝 编辑:程序博客网 时间:2024/06/14 22:23

学生-教师

package com.hibernate.entity;import java.io.Serializable;import java.util.HashSet;import java.util.Set;import javax.persistence.CascadeType;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.Id;import javax.persistence.JoinColumn;import javax.persistence.JoinTable;import javax.persistence.ManyToMany;import javax.persistence.Table;import org.hibernate.annotations.GenericGenerator;@Entity@Table(name = "t_student")// 学生public class Student implements Serializable {private static final long serialVersionUID = -2005812841024253872L;@Id@GeneratedValue(generator = "student_gen")@GenericGenerator(name = "student_gen", strategy = "native")private int id;private String name;@ManyToMany(cascade = CascadeType.ALL)@JoinTable(// 中间表表名name = "student_teacher", //// 中间表学生方列名joinColumns = { @JoinColumn(name = "student_id") }, //// 中间表教师方列名inverseJoinColumns = { @JoinColumn(name = "teacher_id") })private Set<Teacher> teachers = new HashSet<Teacher>();public int getId() {return id;}public String getName() {return name;}public Set<Teacher> getTeachers() {return teachers;}public void setId(int id) {this.id = id;}public void setName(String name) {this.name = name;}public void setTeachers(Set<Teacher> teachers) {this.teachers = teachers;}}

package com.hibernate.entity;import java.io.Serializable;import java.util.HashSet;import java.util.Set;import javax.persistence.CascadeType;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.Id;import javax.persistence.ManyToMany;import javax.persistence.Table;import org.hibernate.annotations.GenericGenerator;@Entity@Table(name = "t_teacher")// 教师public class Teacher implements Serializable {private static final long serialVersionUID = 3543286868313801941L;@Id@GeneratedValue(generator = "teacher_gen")@GenericGenerator(name = "teacher_gen", strategy = "native")private int id;private String name;@ManyToMany(mappedBy = "teachers", cascade = CascadeType.ALL)private Set<Student> students = new HashSet<Student>();public int getId() {return id;}public String getName() {return name;}public Set<Student> getStudents() {return students;}public void setId(int id) {this.id = id;}public void setName(String name) {this.name = name;}public void setStudents(Set<Student> students) {this.students = students;}}


原创粉丝点击