Employee.java
package com.model;
public class Employee {
private int id;
private String name;
private Department dept;
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 getDept() {
return dept;
}
public void setDept(Department dept) {
this.dept = dept;
}
}
Department.java
package com.model;
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;
}
}
Employee.hbm.xml
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<!-- ORM映射文件 -->
<hibernate-mapping package="com.model">
<class name="Employee" table="employee">
<id name="id" column="id">
<generator class="native"></generator>
</id>
<property name="name" column="name"></property>
<many-to-one name="dept" column="deptId"></many-to-one>
</class>
</hibernate-mapping>
Department.hbm.xml
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<!-- ORM映射文件 -->
<hibernate-mapping package="com.model">
<class name="Department" table="department">
<id name="id" column="id">
<generator class="native"></generator>
</id>
<property name="name" column="name"></property>
</class>
</hibernate-mapping>
单元测试:
@Test
public void t(){
Session session = HibernateUtil.getInstance().getSession();
session.beginTransaction();
/*Department d = new Department();
d.setName("d1");
session.save(d);
Employee e = new Employee();
e.setName("e1");
e.setDept(d);
session.save(e);*/
Employee e = (Employee) session.get(Employee.class, 1);
System.out.println(e.getDept().getName());
session.getTransaction().commit();
session.close();
}