Hibernate学习笔记(三) 关联映射


Hibernate的关联映射,以下为类的关系


Hibernate学习笔记(三) 关联映射
 Teacher和Student为一对多双向关联,配置时在多的一段维护关系

student:
@ManyToOne(cascade = CascadeType.ALL)

	@JoinColumn(name = "teacher_id")
	public Teacher getTeacher() {
		return teacher;
	}

Teacher:

@OneToMany(mappedBy = "teacher")

	public Set<Student> getStudents() {
		return students;
	}

Student和Group为多对多双向关联,这是需要 引入一个关联表,只需在任何一端维护关系即可,这里Student为关联主体
Student:

@ManyToMany

	@JoinTable(name = "student_group",
			joinColumns = {@JoinColumn(name = "student_id")},
			inverseJoinColumns = {@JoinColumn(name = "group_id")}
	)
	
	public Set<Group> getGroups() {
		return groups;
	}

 Group:

@ManyToMany(mappedBy = "groups")

	public Set<Student> getStudents() {
		return students;
	}

 Student与StudentCard为一对一双向关联,Student端坐位主体
Student:

@OneToOne(cascade = CascadeType.ALL,mappedBy="student")

	public StudentCard getStudentCard() {
		return studentCard;
	}

 StudentCard:

@OneToOne

	public Student getStudent() {
		return student;
	}

 这样这个关联关系就配置出来了。

你可能感兴趣的:(Hibernate)