У меня есть 3 таблицы: A, B и C. A содержит отношение один-ко-многим с B, а B - отношение один-к-одному с C. Когда я выполняю сеанс session.save (objA), строка будет создана в A, много строк будет создано в B, ссылаясь на идентификатор A, и одна строка должна быть создана в C для каждой записи в B, ссылаясь на идентификатор B.
Теперь проблема в том, что A и B заполняются, как и ожидалось, но в C строки заполняются, а столбец, содержащий идентификатор B, заполняется нулевым значением.
Это проблема с отображением в hbm.xml?
B.hbm.xml
<one-to-one name="propertyC" class="com.model.C"
cascade="all" fetch="join">
</one-to-one>
C.hbm.xml
<many-to-one name="propertyB" class="com.model.B"
column="B_ID" unique ="true" fetch="join" update="true" insert="true" cascade="all">
</many-to-one>
B.java
class B{
private Long id;
private C propertyC;
}
C.java
class C{
private Long id;
private Long bId;
private B propertyB;
}