Spring boot jpa FK 指向错误的PK

Spring boot jpa the FK pointing at the wrong PK

您好,当我在使用 Rest Api ListA 的 ListA tabell 中添加两个列表时,第一个列表的 ID 为 1,另一个列表的 ID 为 2

在我为 ListB 执行一次 rest api 之后,还添加了来自 ListA 的 id 2 的数据。我在邮递员中获得状态 200 并提供正确的详细信息。

当我查看我的数据库时,我发现 FK 从 tabell ListA 指向错误的 PK,而不是指向 PK id 2,它指向 tabell ListA 中的 PK id 1。

总结

我在 ListB 中的 FK 没有指向 tabell ListA 中的正确 PK

@MapsId
@JoinColumn(name = "listA_fk")
@OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
private ListA listA;


@OneToOne(fetch=FetchType.LAZY, cascade=CascadeType.ALL, mappedBy="listA")
@JsonIgnore
private ListB ListB;

原来是@MapsId,共享id,删除@MapsId。