`
sean2012
  • 浏览: 44800 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

Hibernate应用Many2Many

阅读更多
Hibernate应用Many2Many

多对多(Teacher&Student 单/双向)

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来关联两个表。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics