public class Department { private int id ; private String name ; private Set<Employee> emps; public Set<Employee> getEmps() { return emps; } public void setEmps(Set<Employee> emps) { this.emps = emps; } 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; }}//Employee.javapublic class Employee { private int id ; private String name ; private Department depart ; 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 getDepart() { return depart; } public void setDepart(Department depart) { this.depart = depart; }}
Department.hbm.xml
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!--
Mapping file autogenerated by MyEclipse Persistence Tools
-->
<hibernate-mapping>
<class name="org.javaboys.model.Department" >
<id name="id" type="java.lang.Integer">
<column name="id" />
<generator class="native" />
</id>
<property name="name" type="java.lang.String"/>
<set name="emps">
<key column="depart_id"/>
<one-to-many class="org.javaboys.model.Employee"/>
</set>
</class>
</hibernate-mapping>
Employee.hbm.xml
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!--
Mapping file autogenerated by MyEclipse Persistence Tools
-->
<hibernate-mapping>
<class name="org.javaboys.model.Employee" >
<id name="id" type="java.lang.Integer">
<column name="id" />
<generator class="native" />
</id>
<property name="name" type="java.lang.String"/>
<many-to-one name="depart" column="depart_id"/>
</class>
</hibernate-mapping>
测试类:
package org.javaboys.dao;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.javaboys.model.Department;
import org.javaboys.model.Employee;
public class One2Many {
/**
* @param args
*/
public static void main(String[] args) {
Session s = null;
s = HibernateUtil.getSession();
Transaction tx = s.beginTransaction();
Department depart = new Department();
depart.setName("management");
Employee emp = new Employee();
emp.setDepart(depart);
emp.setName("zhangsan");
Employee emp1 = new Employee();
emp1.setDepart(depart);
emp1.setName("lisi");
s.save(depart);
s.save(emp);
s.save(emp1);
tx.commit();
}
}
相关资源:hibernate3.2(六)多对一关联映射