JPA单向一对一子表外键

3

我在子表中已经有了外键,但是我需要在父表中使用@JoinColumn。默认情况下,在OneToOne中,joincolumn会在父表(指定的位置)中创建外键,而我已经有了在子表中的外键。(项目新需求)之前它使用mappedBy子句进行映射。

我如何在父实体中使用@JoinColumn来进行@OneToOne链接?

我想建立单向关系。

为什么我不能使用这个:

@JoinColumn(name = "parent_id", referencedColumn = "childs_fk")

谢谢!

更新:

这个示例中,外键列“WEBSITE_ID”将位于Player表中。而我的外键在Website表中。

在双向一对一关系中,单个外键用于关系的拥有方。另一方面,目标实体必须使用mappedBy属性。

我已经有现有的表格,我的外键不在拥有方,我知道外键可以在两个方面上。这个答案不是我所需要的。

1个回答

0
如果你有一个表Parent和一个表Child,并且外键在Child表中,名称为PARENT_ID,指向Parent表中的ID字段,则注解应该如下所示:
@JoinColumn(name="PARENT_ID") 

除了我需要的那个之外,子表中有很多FK。并且它的名称不是这种格式:父表是inv_act_acceptance_items_mus, 子表是inv_book_museum FK在inv_book_museum中,并命名为act_item_id。所以唯一的方法就是将其重命名吗? - Sergey Dvoreckih
不不不!这只是一个例子,名称必须与您的外键名称匹配。 - Simon Martinelli
我是指将act_item_id重命名为类似于inv_act_acceptance_items_mus_id的东西。谢谢! - Sergey Dvoreckih

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接