JPA规范是否允许引用非主键列?

JPA规范是否允许引用非主键列?,第1张

JPA规范是否允许引用非主键列?

@axtavt:看来您的答案不正确。我刚刚收到了来自“ Pro JPA 2.0”作者的电子邮件,他们自己也在从事JPA规范。

“在您的示例中,Zip类与某个国家/地区关系

public class Zip implements Serializable{    @Id    @Column(name = "pre")    private String pre;    @Id    @ManyToOne    @JoinColumn(name = "country_pre", referencedColumnName = "iso_pre")    private Country country = null;    ...}

这似乎是试图将country_pre外键列指向Country表(不是PK)中的iso_pre列。 JPA从未允许您创建这样的关系,
因为如果不指定国家/地区的PK,就无法唯一标识关系中的哪个国家/地区实例。当您到达派生的标识符部分时,您只是在解决问题,但问题似乎出在无效关系本身中。”

因此,JPA规范根本不允许将关系/ FK关联到非PK列…



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5019654.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-14
下一篇 2022-11-14

发表评论

登录后才能评论

评论列表(0条)

保存