Java JPA 2.1/Hibernate-将两个不相关的实体连接到与第三个实体有@OneToMany关系的第一个实体中

Java JPA 2.1/Hibernate-将两个不相关的实体连接到与第三个实体有@OneToMany关系的第一个实体中,java,hibernate,jpa,Java,Hibernate,Jpa,我很抱歉,如果这个问题是误导性的,但这里是我的情况 @Entity Class A { @Id private String id; @OneToMany private Set<B> b; } @Entity Class B { @Id private String c; private String d; } @Entity Class C { @Id private String e; private String f; } @实体 甲级{ @身份证 私有字符串id; @

我很抱歉,如果这个问题是误导性的,但这里是我的情况

@Entity
Class A {
@Id
private String id;
@OneToMany
private Set<B> b;
}

@Entity
Class B {
@Id
private String c;
private String d;
}

@Entity
Class C {
@Id
private String e;
private String f;
}
@实体
甲级{
@身份证
私有字符串id;
@独身癖
私有集b;
}
@实体
B类{
@身份证
私有字符串c;
私有字符串d;
}
@实体
C类{
@身份证
私有字符串e;
私有字符串f;
}
目前,我正在从实体B检索实体A及其对象集。事实上,实体B和实体C不通过外键关联,它们需要通过主键连接,因此当我检索实体A时,在对象集中,我会将实体BC中的列连接在一起


当我尝试获取对象A时,是否有任何方法可以告诉Hibernate连接实体BC中的列?

在JPA 2.0中用于连接相关实体。为此,需要FK。
JPA2.1标准、Hibernate 5.1及更高版本解决了连接不相关实体的问题。您可以在不相关的列上使用join。

在JPA2.0中,用于连接相关实体的join被使用。为此,需要FK。 JPA2.1标准、Hibernate 5.1及更高版本解决了连接不相关实体的问题。可以在不相关的列上使用join