?? 8_一對一唯一外鍵關聯映射(雙向).txt
字號:
Person<--->IdCard
一對一唯一外鍵關聯雙向,需要在另一端(idcard),添加<one-to-one>標簽,
指示hibernate如何加載其關聯對象,默認根據主鍵加載person,外鍵關聯映射中,
因為兩個實體采用的是person的外鍵維護的關系,所以不能指定主鍵加載person,
而要根據person的外鍵加載,所以采用如下映射方式:
<one-to-one name="person" property-ref="idCard"/> <!--property-ref 指明根據idCard加載person-->
IdCard
private int id;
private String cardNo;
private Person person;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
<hibernate-mapping >
<class name="com.tcit.hibernate.IdCard">
<id name="id">
<generator class="native"/>
</id>
<property name="cardNo"/>
<one-to-one name="person" property-ref="idcard"/> <!--property-ref 指明根據idCard加載person-->
</class>
</hibernate-mapping>
=====================================================
Person
private int id;
private String name;
private IdCard idcard;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
<hibernate-mapping >
<class name="com.tcit.hibernate.Person">
<id name="id">
<generator class="native"/>
</id>
<property name="name"/>
<many-to-one name="idcard" unique="true"/>
</class>
</hibernate-mapping>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -