[英]JPA Criteria Specification for ManyToMany
我有具有ManyToOne关系的实体Client
和Agency
,因此表client
agency_id
列指向表agency
,并且Client
具有:
@ManyToOne
@JoinColumn(name = "agency_id")
private Agency agency;
有Spring Data JPA规范,可以在以下位置选择具有Agency
ID的Client
:
public static Specification<Client> withAgencyIds(Collection<Long> agencyIds) {
return (root, query, cb) -> root.join(Client_.agency).get(Agency_.id).in(agencyIds);
}
现在,我必须将ManyToOne关系更改为ManyToMany关系,以便Client
具有:
@ManyToMany
@JoinTable(name = "client_agency",
joinColumns = @JoinColumn(name = "client_id"),
inverseJoinColumns = @JoinColumn(name = "agency_id"))
@OrderBy("name")
private List<Agency> agencies = new ArrayList<>();
我应该如何调整上面的说明书中,以选择Client
的有Agency
的ID?
提前非常感谢您!
此JPA标准规范可以正常工作:
public static Specification<Client> withAgencyIds(Collection<Long> agencyIds) {
return (root, query, cb) -> root.join(Client_.agencies).get(Agency_.id).in(agencyIds);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.