级联和反向之间的Hibernate关系

时间:2014-08-11 19:42:50

标签: java hibernate jpa orm hibernate-mapping

我还没有那么多地使用过休眠。所以,当反向和级联进入图片时,就陷入了困境。我知道反向告诉hibernate关于拥有更新其关系的责任的拥有实体,Cascade将告诉hibernate首先保存实体然后保存其依赖实体。

我只是想知道在同一个实体中是否必须声明cascasde =“all”和inverse =“true”。我们可以通过其他实体中的inverse和cascade属性将一个声明为拥有实体。请点亮这个?

由于

1 个答案:

答案 0 :(得分:1)

级联仅在从父级传播到子级(一对多或一对一)时才有意义。对于多对一或多对多没有意义,因为每当删除Child时,您都不想删除Parent。

反向用于双向关联,并且通常它与级联在同一侧,但这是因为many-to-one side is much more efficient(控制关联)而不是一对多之一。

您也可以与级联进行一对多的单向关联,由于这是单一关联方,因此它也是控制它的方式。