Java JPA:我们可以在多个关系的两边使用不同的集合类型吗?

Java JPA:我们可以在多个关系的两边使用不同的集合类型吗?,java,hibernate,orm,jpa-2.0,Java,Hibernate,Orm,Jpa 2.0,我们可以在一个实体中使用java.util.List,在相关实体中使用java.util.Set来处理manytomy关系吗?例如: @Entity public class Employee { @Id @Column(name="EMP_ID") private long id; ... @ManyToMany @JoinTable( name="EMP_PROJ", joinColumns={@JoinColumn(name="EMP_I

我们可以在一个实体中使用
java.util.List
,在相关实体中使用
java.util.Set
来处理
manytomy
关系吗?例如:

@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;
  ...
}
@实体
公营雇员{
@身份证
@列(name=“EMP\u ID”)
私人长id;
...
@许多
@可接合(
name=“EMP_PROJ”,
joinColumns={@JoinColumn(name=“EMP_ID”,referencedColumnName=“EMP_ID”)},
inverseJoinColumns={@JoinColumn(name=“PROJ_ID”,referencedColumnName=“PROJ_ID”)}
私人项目;
...
}
@实体
公共类项目{
@身份证
@列(name=“PROJ_ID”)
私人长id;
...
@许多(mappedBy=“项目”)
私人名单雇员;
...
}

是的,你可以。你为什么不试试呢

项目可能希望员工按特定顺序工作,而员工可能只希望拥有一组项目