如何将类型转换为“Specification”“toPredicate”方法?
例如:
@Entity
public class Empresa{...}
@Entity
public class Cliente extends Empresa{
private Integer cod;
...
}
@Entity
public class Vinculo{
private Empresa emp1;
private Empresa emp2;
}
public static Specification<Vinculo> serieEq(final Integer cod) {
return new Specification<Vinculo>() {
@Override
public Predicate toPredicate(Root<Vinculo> root, CriteriaQuery<?> query, CriteriaBuilder cb) {
return cb.equal(root.join("emp2").get("cod"), cod);
};
}
请注意,“cod”仅出现在 Cliente 中。
非常感谢,
最佳答案
您可以使用 as() API。这将适用于某些 JPA 提供程序。
关于java - 具有继承性的 Spring 规范,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17306047/