Jpql语法错误?

时间:2015-10-04 07:16:29

标签: jpa jpql

public List<City> getCIties(String st) {
    String queryString = "SELECT c.cityCollection FROM Country c WHERE c.code =: st";
    Query query3 = em.createQuery(queryString);
    query3.setParameter("number",st);
    List<City> l = query3.getResultList();
    return l;    
}

所以Country类有一个城市列表,我的任务是获取一个国家所有城市的列表,我的jpql查询有问题。它说&#34;表达式不是有效的条件表达式&#34;。对我来说看起来不错,因为我从具有给定代码的国家返回城市集合。

1 个答案:

答案 0 :(得分:0)

您的参数名称对我来说似乎不正确。你应该设置

 query3.setParameter("st",st);

public List getCIties(String st) 
{ 
 String queryString = "SELECT c.cityCollection FROM Country c WHERE c.code =: st"; 
Query query3 = em.createQuery(queryString); 
query3.setParameter("st",st); 
List l = query3.getResultList(); 
return l;

}