【发布时间】:2014-03-22 09:44:50
【问题描述】:
我有以下带有enum 集合的实体。我想使用enum 参数搜索用户。
用户可能拥有多个权限。当我使用Permission.APPROVE 之类的参数搜索用户时,可能有一个或多个用户拥有该权限。
怎么写JPQL查询?
用户.java
@Entity
....
public class User implements Serializable {
@ElementCollection(targetClass = Permission.class)
@Enumerated(EnumType.STRING)
@CollectionTable(name = "USER_PERMISSION", joinColumns = @JoinColumn(name = "PERMISSION", referencedColumnName = "ID"))
private List<Permission> permisssionList;
}
Permission.java
public enum Permission {
REGISTER, APPROVE, REJECT, CONFIRM;
}
怎么写?
public List<User> findUserList(Permission permission) {
Query q = em.createQuery(.....);
result = q.getResultList();
}
【问题讨论】: