質問

たいのですが次の項目にJPA2基準のクエリを使用せずにメタモデルクラス

    CriteriaBuilder cb = em.getCriteriaBuilder();
    CriteriaQuery<Employee> cq = cb.createQuery(Employee.class);
    Root<Employee> emp = cq.from(Employee.class);
    cq.where(cb.isEmpty(emp.get(Employee_.projects)));
    cq.select(emp);

を使う:

  cq.where(cb.isEmpty(emp.get("projects")));

でもねーに変換する方法への道を表現で必要とされるcb.isEmpty...

感謝。

役に立ちましたか?

解決

してみてください:

CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery cq = cb.createQuery(Employee.class);
Root emp = cq.from(Employee.class);
cq.where(cb.isEmpty(emp.<List<Project>>get("projects")));
cq.select(emp);

または、 Path 変数:

CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery cq = cb.createQuery(Employee.class);
Root emp = cq.from(Employee.class);
パス<List<Project>> projects = emp.get("projects"));
cq.where(cb.isEmpty(projects);
cq.select(emp);

参考

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top