Hibernate中的一对一关联可以通过以下方式之一建立。
我想知道:
答案 0 :(得分:0)
映射到同一个表(组件)的类很容易维护。您不再需要在不再使用数据时清理记录。永远不会有级联问题。它也比连接表更快。但是您无法查询该组件,因为它未被识别。
您还可以使用 join 将组件(或任何其他数量的属性)映射到另一个表。可能有技术原因这样做,并且从应用程序的角度来看没有区别。连接也是由hibernate使用相同的主键实现的。
使用一对一关系时,您可以链接独立实体。两者都可以查询。其中一个没有自己的身份生成器,它从另一个获取id,这使得它依赖于另一个。在绘制一对一关系时,我总是遇到问题,因为它们很难理解,实际上很少见。
或者,您可以使用普通外键(多对一)映射实体。这通常更容易理解和维护。缺点是数据库中的另一个外键,可以通过使用一对一来避免。