有人可以解释我如何映射与hibernate的一对零关联(使用映射xml文件而不是注释)?
这些是规则:
以下是所需的表格(我想使用外键):
TABLE MENU:
ID
NAME
FKID_AREA
TABLE AREA:
ID
NAME
FKID_MENU
谢谢!
答案 0 :(得分:0)
您应该从FKID_AREA
表中移除MENU
,因为它不需要(甚至是一个问题,因为它是AREA.FKID_MENU
的转发版。)
对于其余部分,Hibernate documentation on bidirectional one-to-one association mappings:
中对此进行了描述<class name="Area">
<id name="id" column="ID">
<generator class="native"/>
</id>
<many-to-one name="menu"
column="FKID_MENU"
unique="true"
not-null="false"/>
</class>
<class name="Menu">
<id name="id" column="ID">
<generator class="native"/>
</id>
<one-to-one name="area"
property-ref="menu"/>
</class>
答案 1 :(得分:0)
您应该从AREA表中删除FKID_MENU。根据您的描述,您的hbm映射将在
之下<class name="Menu">
<id name="id" column="ID">
<generator class="native"/>
</id>
<property name="name" cloumn="name"/>
<many-to-one name="area" column="FKID_AREA" class="Area"/>
</class>
<class name="Area">
<id name="id" column="ID">
<generator class="native"/>
</id>
<property name="name" cloumn="name"/>
</class>