JPA中的一对多关系

时间:2013-06-30 16:27:57

标签: jpa

我面临一个与一对多关系有关的问题。我有两个实体叫 导师和经验,两个实体之间的关系是一对多关系意味着导师可以有多种经验。见以下代码

公共班导师{

@Id
private String userId;
    @JoinColumn(name = "T_MENTORS_userId", referencedColumnName = "userId")
private Collection<Experience> experience;
}

体验实体

public class Experience {

    @Id
    private long experienceID;

}

我如何找到针对任何特定用户的体验,因为我在体验实体中没有任何用户ID字段?

1 个答案:

答案 0 :(得分:0)

Mentor mentor = em.find(Mentor.class, specificUserId);
Collection<Experience> specificUserExperiences = mentor.getExperiences();

或者,使用查询:

select e from Mentor m left join m.experiences e where m.userId = :specificUserId;