小编use*_*341的帖子

JPA Criteria API IN表达式参数列表

是否有可能在Criteria API .in表达式中使用参数列表?

我有这样的事情:

    List<Long> list = new ArrayList<Long>();
    list.add((long)1);
    list.add((long)2);
    list.add((long)3);


CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery<Bewerbung> criteriaQuery = cb.createQuery(Bewerbung.class);
Root<Bewerbung> bewerbung = criteriaQuery.from(Bewerbung.class);

criteriaQuery.select(bewerbung).where(
cb.in(bewerbung.get(Bewerbung_.bewerberNummer)).value(list);

return em.createQuery(criteriaQuery).getResultList();
Run Code Online (Sandbox Code Playgroud)

表达式.value(list)不起作用,因为value()期望类型为long而不是列表的参数.在我的情况下,不可能使用子查询.任何人都可以帮我解决这个问题吗?

java expression jpa criteria-api

26
推荐指数
2
解决办法
5万
查看次数

标签 统计

criteria-api ×1

expression ×1

java ×1

jpa ×1