外键值丢失问题

06-09-06 frankyulg

我们项目用的是Struts+spring+hibernate,jdk1.4.2,hibernate版本为2,

最近出了个怪问题,我们有主从两张表,通过外键关联,但只要主表的数据更新下,和这条记录关联的从表里的外键值就会变成null,hibernate里级联关系为delete,没牵扯到更新操作,主表进行更新的操作

代码里也没操作从表数据,这是怎么回事

banq
2006-09-07 10:07

和主对象和从对象有关,你是想更新主表数据,达到这个目的,你是更新其对应的主对象,而这个主对象可能和从对象没有关系,所以造成这个结果。

我感觉思考时不要以数据表为目的描述,在使用hibernate情况下,实际你不可能直接操作到数据表,中间隔着一层呢。Hibernate不是SQL JDBC,能够直接操作数据表,Hibernate是对象的持久化,Hibernate操作的是对象。