У меня есть два объекта A и B со следующим соотношением
Как написать hibernate-сопоставления.hbm для A и B (спящий режим 3, без аннотаций)?
В соответствии с этой статьей вы можете создать свойство составного идентификатора в родительском классе (например, A):
<properties name="ParentNaturalId">
<property name="prop1" column="prop_1" />
<property name="prop2" column="prop_2" />
</properties>
И Клиент ссылается на родителя через эту ассоциацию "один-на-один":
<many-to-one name="parent" class="B" not-null="false" not-found="ignore" property-ref="ParentNaturalId" fetch="join">
<column name="b_prop_1" />
<column name="b_prop_2" />
</many-to-one>
См. Атрибут not-found = "ignore" many-to-one:
not-found (необязательно - по умолчанию исключение): указывает, как будут обрабатываться внешние ключи, которые ссылаются на отсутствующие строки. ignore будет обрабатывать недостающую строку как ассоциацию нулей.
fetch (необязательно - по умолчанию для выбора): выбор между выборкой внешнего соединения или последовательной выборкой выборки.