一,按照外键映射
1,在两端添加对方的属性;
Manager 类 :private Department department;
Department类 :private Manager manager;
2,在任意一端的映射文件添加:
.比如在 Department.hbm.xml中:
<many-to-one name="manager" column="mafk" class="com.m01.fk121.Manager" unique="true"></many-to-one>
name : 本bean类中的属性; column: 本bean类对应的数据表的 指向 对方数据表的外键;
class :属性所对应的全类名;
unique : 设置该外键为唯一的;
.在 Manager.hbm.xml中
<one-to-one name="department"
class="com.m01.fk121.Department" property-ref="manager"></one-to-one>
name:本bean类中的属性;
property-ref: 对方bean类中 指向本类的属性 即 Department类 :private Manager manager;
二,按照主键映射
1,在两端添加对方的属性;
Wife类: private HusBand husBand;
HusBand 类: private Wife wife;
2, 修改映射文件
如:在 HusBand .hbm.xml 添加
<id name="hId" type="java.lang.Integer" >
<column name="HID" />
<generator class="foreign">
<param name="property">wife</param>
</generator>
</id>
class="foreign" 设置该Bean对应的数据表的主键生成方式 外键 模式 依赖 属性 wife 表明根据对方的主键来生成
<one-to-one name="wife"
class="com.m01.pk121.Wife" constrained="true"></one-to-one>
constrained="true" :使得当前主键添加外键约束
在 Wife.hbm.xml 添加
<one-to-one name="husBand" class="com.m01.pk121.HusBand"></one-to-one>