非主键之间的休眠关系OneToMany

问题描述 投票:0回答:1

我对Hibernate有疑问。

表的说明:

表A:id,X表B:id,Y

属性X和Y不是主键。但是A和B之间的连接具有这些属性。

加入:A.X = B.Y

表A的出现是指表B的多次出现。

我该如何与Hibernate实现这种关系?使用@JoinFormula吗?

public class A {

  @Id
  private Long id;

  @OneToMany
  private List<B> listOfB;
}

public class B {

  @Id
  private Long id;

  private Integer Y;
}

提前感谢。

hibernate join primary-key hibernate-onetomany
1个回答
0
投票

您可以执行以下操作:

@Entity
public class B {

  @Id
  private Long id;

  @ManyToOne
  @JoinColumn(name = "Y", referencedColumnName = "X")
  private A aClass;
}

@Entity
public class A {

  @Id
  private Long id;

  @OneToMany(mappedBy = "aClass")
  private List<B> listOfB;
}
© www.soinside.com 2019 - 2024. All rights reserved.