0
我正在面臨一個問題,通過來自列表中的子項的值來過濾實體。 例如:帶規範的JPA - 如何通過子集合內容過濾實體?
public class Father(){
private String name;
private Set<Child> childs;
}
public class Child(){
private String name;
private Integer age;
private School school;
}
public class School(){
private String name;
}
我想過濾所有的父親已經在學校十一個孩子
這是我做的,但不能正常工作:
Specification specs = new Specificatrion(){
@Override
public Predicate toPredicate(Root<Father> root, CriteriaQuery<?> query, final CriteriaBuilder cb){
Root<Child> childRoot = query.from(Child.class);
Path<?> path = childRoot.get(Child_.school.name);
Predicate pred = exp.in("School Name");
return cb.and(pred);
}
}
能有人幫我解決這個問題嗎? 謝謝!
嗨埃塞克斯, 我想使用規範。 將嘗試改變,看看會發生什麼, 謝謝! –
您可以使用規格,但我不認爲您可以像您在問題中設定的一樣。很高興被證明是錯誤的。 –