1 つのクラスを 2 つのテーブル (どちらも複数の列の主キーを持つ) にマップする必要があります。TABLE1 に id1、id2、id3 があり、TABLE2 に主キーとして id1、id2 があるとします。マッピングファイルを書くとき、私は次のようなことをします:
<hibernate-mapping package="beans">
<class name="TABLE1Class" table="TABLE1">
<composite-id name="table1PK" class="TABLE1PKClass">
<key-many-to-one name="id1" class="ID1Class" column="id1"/>
<key-many-to-one name="id2" class="ID2Class" column="id2"/>
<key-many-to-one name="id3" class="ID3Class" column="id3"/>
</composite-id>
<property name="someProperty" type="integer" not-null="true" column="x"/>
<join table="TABLE2">
<key column="id1" />
<!-- <key column="id2"/> The join tag accepts only one key tag!!!
How do I map the second key??? -->
<property name="propertyFromTable2" type="float" not-null="true"/>
</join>
</class>
</hibernate-mapping>
ご覧のとおり、結合タグはキー タグを 1 つだけ受け入れます。2 番目の ID をマップするにはどうすればよいですか?
敬具、
Despot
PS: メリー クリスマスと幸せで生産的な新年 ;)