JPQL 元素集合的选择查询
我有以下实体与集合。我想使用参数搜索用户。
用户可能具有多个权限。当我使用参数如 搜索用户时,可能有一个或多个用户具有该权限。如何编写查询?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;
}
权限.java
public enum Permission {
REGISTER, APPROVE, REJECT, CONFIRM;
}
怎么写?
public List<User> findUserList(Permission permission) {
Query q = em.createQuery(.....);
result = q.getResultList();
}