Hibernate один ко многим, используя не первичный ключ - PullRequest
6 голосов
/ 06 августа 2009

У меня есть класс A с набором B. Однако эти два объекта связаны полями, которые НЕ являются первичными ключами.

Для B я могу использовать <key column>, но как мне указать, что соединение должно быть в A. secondary_column? Не A. table_primary_key_id?

<class table="a">
    <id column="table_primary_key_id">
    </id>
    <property column="secondary_column" />

    <set table="B" lazy="false" >
        <key column="B_not_primary" />
        <one-to-many class="BClass" />
    </set>
</class>    

1 Ответ

4 голосов
/ 07 августа 2009

Решено с

<set name="someSet" table="B" lazy="false">
    <key column="B_not_primary" property-ref="secondary_column" />
    <one-to-many class="BClass" />
</set>
...