Hibernate mapping 在Hibernate hbm文件中使用复合主键连接表

Hibernate mapping 在Hibernate hbm文件中使用复合主键连接表,hibernate-mapping,key,composite,hbm,Hibernate Mapping,Key,Composite,Hbm,我有两个表要使用hbm文件连接 情况如下 表B有一个复合PK 表B a1(主键) a2(主键) a3(主键) 福 酒吧 ================== 表A有一个主键,是表B中的外键 表A a1(主键,fk) 臀部 跳 ======== 这是从表a到表B的一对多关系 有人能帮我解决hbm文件映射问题吗 我正在记下我试过的东西 表B <class> <composite-id name="XXXX" class="....."> <key-pro

我有两个表要使用hbm文件连接

情况如下

表B有一个复合PK

表B a1(主键) a2(主键) a3(主键) 福 酒吧

==================

表A有一个主键,是表B中的外键

表A a1(主键,fk) 臀部 跳

========

这是从表a到表B的一对多关系

有人能帮我解决hbm文件映射问题吗

我正在记下我试过的东西

表B

<class>
<composite-id name="XXXX" class=".....">
        <key-property name="a1" column="a1" type="int"/>
        <key-property name="a2" column="a2" type="int"/>
        <key-property name="a3" column="a3" type="int"/>
    </composite-id>

    <property name="foo" column="foo" type="java.lang.Float"></property>    
    <property name="bar" column="bar" type="java.lang.Float"></property>
    </class>

表A

正常休眠映射


如何连接这两个表?

一个解决方法可以是使用propertyref来打破compositeId

<class class="B">
  <property name="a1_again" column="a1" insert="false" update="false"/>

  <bag name="As" class="A">
    <key property-ref="a1_again"></key>
    ...
  </bag>
</class>

...