一尘不染

映射文件中的“hibernate”

hibernate

有人可以解释在xml映射文件中使用逆函数的方法吗,我正在阅读本教程,但无法理解在映射文件中的逆用法?

谢谢


阅读 202

收藏
2020-06-20

共1个答案

一尘不染

逆仅决定关系中的哪个实体负责更新数据库以反映关联。

假设一对多的双向关联。代码A和B中有两个类,A包含一组B,B维护对A的引用。在数据库级别,只有一个外键要更新,B的表包含一个到主键的列的A。

在这种情况下,假设我们将inverse =
true放在集合侧。这意味着仅将一个实体添加到集合中将不会触发外键更新。由于更新外键的责任在于B。因此,将B对象添加到A维护的集合中不足以更新外键列。objectA.addToSetOfB(objectB)不会影响外键。

仅当给B引用A时,才会更新B表中的外键。因此,objectB.setA(objectA)一定会更新外键并实际建立关系。

我认为同一概念也将适用于多对多关系。

2020-06-20