【问题标题】:How to use the Hibernate Join Column?如何使用 Hibernate Join 列?
【发布时间】:2018-06-20 00:46:18
【问题描述】:

我有两个类和它们之间的关系。无法理解问题出在哪里。我用下一种方式写代码。

 public class Abiturient {

        @Id
        @GeneratedValue(strategy = GenerationType.IDENTITY)
        @Column(name = "id", nullable = false, unique = true, length = 11)
        private Long id;

        @ManyToOne(fetch = FetchType.LAZY)
        @JoinColumn(name = "prizv_id")
        private Prisvishche abiturients_pr;

并映射一个:

public class Prisvishche {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column
    private BigInteger prizv_id;

    @OneToMany(mappedBy = "prizv_id")
    private List<Abiturient> abiturients = new ArrayList();

【问题讨论】:

标签: java hibernate jpa


【解决方案1】:

您不能指向mappedBy 中的数据库列。 您必须指向一个实体字段,它是关系的拥有方,即:

 @ManyToOne(fetch = FetchType.LAZY)
 @JoinColumn(name = "prizv_id")
 private Prisvishche abiturients_pr;

所以你拥有的一方应该是:

@OneToMany(mappedBy = "abiturients_pr")
private List<Abiturient> abiturients = new ArrayList();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-31
    • 2021-02-27
    • 2015-05-12
    • 1970-01-01
    • 2012-07-15
    • 2015-04-08
    相关资源
    最近更新 更多