【发布时间】:2014-06-23 11:39:27
【问题描述】:
以下 JPQL 查询未返回结果。如何更改它以使其返回预期的结果?
@SuppressWarnings("unchecked")
public Collection<Description> findDescriptionsForConcept(Concept conc) {
System.out.println("in JpaSnomedRepository(), conc.getConceptPk().getId() is: "+conc.getConceptPk().getId());;
Query query = this.em.createQuery("SELECT descr FROM Description descr WHERE descr.concept =:cid");
query.setParameter("cid", conc);
return query.getResultList();
}
注意:解决方案是更改描述类中多对一关系中连接列之一的名称。但我将以下答案之一标记为已接受,因为该人投入了大量资金时间试图帮助我。
【问题讨论】:
-
可以尝试检查实际生成的查询。如果使用 Hibernate,可以设置 hibernate.show_sql=true。这应该会给你一些提示。
-
好的,现在缺少的最后一件事是您希望查询的样子。只需自己编写 MySql 查询,在您的数据库上测试并发布它。然后我们可以弄清楚如何定义 JPA 映射以及如何构造正确的 JPQL。
标签: java sql spring spring-mvc jpa