首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

多对多联系关系映射

2012-08-24 
多对多关联映射例如:学生与老师的关系实体类:package com.chris.entityimport java.util.Set/** * 老师

多对多关联映射

例如:学生与老师的关系

实体类:

package com.chris.entity;import java.util.Set;/** * 老师 * @author Administrator * */public class Teacher {private int id;private String name;private Set<Student> students;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;}public Set<Student> getStudents() {return students;}public void setStudents(Set<Student> students) {this.students = students;}}

?

package com.chris.entity;import java.util.Set;/** * 学生 * @author Administrator * */public class Student {private int id;private String name;private Set<Teacher> teachers;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;}public Set<Teacher> getTeachers() {return teachers;}public void setTeachers(Set<Teacher> teachers) {this.teachers = teachers;}}

?

映射文件:

Teacher.hbm.xml

<?xml version="1.0"?><!DOCTYPE hibernate-mapping PUBLIC     "-//Hibernate/Hibernate Mapping DTD 3.0//EN"    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"><hibernate-mapping package="com.chris.entity"><class name="Teacher"><id name="id"><generator table="teacher_student"><!-- key 节点定义Teacher类在第三方表中存储的字段名 --><key column="teacher_id"/><!-- column属性指定了在第三方表中通过student_id字段查找Student --><many-to-many column="student_id"/></set></class></hibernate-mapping>

?Student.hbm.xml

<?xml version="1.0"?><!DOCTYPE hibernate-mapping PUBLIC     "-//Hibernate/Hibernate Mapping DTD 3.0//EN"    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"><hibernate-mapping package="com.chris.entity"><class name="Student"><id name="id"><generator table="teacher_student"><key column="student_id"/><many-to-many column="teacher_id"/></set></class></hibernate-mapping>

?

热点排行