JPA ElementCollection中的对象作为键

时间:2010-01-05 10:57:33

标签: java jpa

我有一个可以拥有多个loginNames的类User:

@Entity
public class User {

  @ElementCollection
  private List<String> logins = new ArrayList<String>();

}

我希望确保用户注册时系统中的每个登录都是唯一的。当有人登录时,应该通过登录名找到用户对象。因此集合中的元素是某种(数据库)密钥。

如何制作钥匙?我怎样才能有效查询?为登录名使用单独的实体类会更好吗?

1 个答案:

答案 0 :(得分:1)

你是什么意思关键?您可以在CollectionTable上添加“唯一”约束以使其唯一。 如果他们应该键入其他表,那么唯一明智的答案就是拥有一个用户实体。