日期:2014-05-17 浏览次数:20735 次
<class name="com.corp.temp.employee" table="t_employee">
<id name="employeeId">
<generator class="native"/>
</id>
<property name="sex"/>
<!--增加多对一关联映射,此处name="group"是值实体类User.java中的group属性-->
<many-to-one name="权限" column="权限id"/>
</class>
<class name="com.corp.temp.权限" table="t_权限">
<id name="id">
<generator class="native"/>
</id>
<property name="name"/>
</class>
employee的映射表(employee.hbm.xml):
<class name="com.corp.temp.employee" table="t_employee">
<id name="employeeId">
<generator class="native"/>
</id>
<property name="sex"/>
<!--增加多对一关联映射,此处name="权限"是值实体类权限.java中的名称属性。
这里我额外加了级联cascade属性。
意思是,在执行save或update方法时,会先保存被维护的另一端对象。-->
<many-to-one name="权限" column="权限id" cascade="save-update"/>
</class>
//存储例程
权限 qx = new 权限();
qx.setName("允许增加的权限");
session.save(qx);
Employee employee1 = new Employee();
employee1.setSex("男");
employee1.set权限(qx);
Employee employee2 = new Employee();
employee2.setSex("女");
employee2.set权限(qx);
session.save(employee1);
session.save(employee2);
//读取例程
//这里“1”代表id=1
Employee employee = (Employee)session.load(Employee.class, 1);
System.out.println("employee.sex=" + employee.getSex());
System.out.println("employee.权限.name=" + employee.get权限().getName());