假设上一课,您如何找到Person
具有特定电子邮件地址的?
public class Person implements Comparable<Person> {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name="id")
private long id = 0;
@OneToMany(cascade={CascadeType.PERSIST, CascadeType.MERGE, CascadeType.REMOVE}, fetch=FetchType.LAZY)
private Set<String> email = new HashSet<String>();
}
这样做简单吗,还是有适当的方法?
select p from Person p where p.email=:email
那并没那么简单。JPQL IN
为此提供了运营商:
select p from Person p, IN(p.email) m where m = :email
“旧”方式(类似于SQL)是:
select p from Person p join p.email m where m = :email
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句