大家好我是这个小组的新手。我在多对一关系中遇到问题。我有一个名为machinemaster的表,其中ther是一个主键&另外还有12个表说bios,hdd&所以在这个所有的表中都有机器的参考说机器ID。首先将数据插入到机器管理器和在接受id的引用后,它将被插入到所有子表中..它工作正常...但是当我在子表中输入数据时,它对除了id之外的所有机器字段都为空...所以wat出错了我知道...... cascade中有问题=删除& lazy = false ...我保留了这个,所以告诉我这是正确的,如果是,那么为什么父数据更新为null当我根据父母的推荐在子项中插入数据时...提前感谢
答案 0 :(得分:0)
我会使用像这样的继承层次结构
class Part
{
int id;
}
class Hdd extends Part
{
string someProp;
}
class Bios extends Part
{
string version;
}
<class name="Part" table="mashinemaster">
<id name="id" >
<generator ...>
</id>
<joined-subclass name="Hdd" table="hddtable">
<key column="machineID" />
<property name="someProp" />
</joined-subclass>
<joined-subclass name="Bios" table="biostable">
<key column="machineID" />
<property name="version" />
</joined-subclass>
</class>