例如:员工与部门的关系(员工类型中存在一个部门的引用)
部门
package com.chris.entity;
/**
* 部门
* @author Administrator
*
*/
public class Department {
private int id;
private String name;
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;
}
}
员工
package com.chris.entity;
/**
* 员工
* @author Administrator
*
*/
public class Employee {
private int id;
private String name;
private Department department;
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 Department getDepartment() {
return department;
}
public void setDepartment(Department department) {
this.department = department;
}
}
部门映射文件:
<?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="Department"> <id name="id"> <generator class="native"/> </id> <property name="name" unique="true"/> </class> </hibernate-mapping>
员工映射文件:
<?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="Employee"> <id name="id"> <generator class="native"/> </id> <property name="name"/> <!-- 部门属性映射 --> <many-to-one name="department" column="department_id"/> <!-- 多对一标签会在员工表中创建一个外键引用部门表的主键 --> </class> </hibernate-mapping>