我们可以在一个实体中使用java.util.List并在相关实体中使用java.util.Set进行ManyToMany关系吗?例如:

@Entity
public class Employee {

  @Id
  @Column(name="EMP_ID")
  private long id;
  ...

  @ManyToMany
  @JoinTable(
      name="EMP_PROJ",
      joinColumns={@JoinColumn(name="EMP_ID", referencedColumnName="EMP_ID")},
      inverseJoinColumns={@JoinColumn(name="PROJ_ID", referencedColumnName="PROJ_ID")})
  private Set<Project> projects;
  ...
}

@Entity
public class Project {

  @Id
  @Column(name="PROJ_ID")
  private long id;
  ...

  @ManyToMany(mappedBy="projects")
  private List<Employee> employees;
  ...
}

最佳答案

是的你可以。您为什么不简单尝试呢?

一个项目可能希望按特定顺序安排员工,而一个员工可能只想拥有一组项目。

关于java - JPA:我们可以在ManyToMany关系的两边使用不同的收集类型吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8414049/

10-17 01:55