命名为JPA Query,带有2个参数

时间:2013-03-21 17:55:46

标签: database java-ee jpa

我正在创建一个命名的JPA查询。它需要获取符合经理姓名和状态的所有记录。这就是我创造的方式。

@NamedQuery(name = "Claims.viewMgrClaims", query = "SELECT c FROM Claims c WHERE c.mgrname = :mgrname AND " 
+ "c.status like :stat")

我按照此处给出的示例Named Query with like in where clause

创建了它

但我不确定我的电话会是什么样子。例如,我不确定如何将setParameter与两个字段一起使用。我用它来做一个不同的查询,它工作正常。

List<Claims> l = em.createNamedQuery("Claims.findByMgrname").setParameter("mgrname", MgrName).getResultList();

但是我应该为我的新NamedQuery使用什么?我说不对。

2 个答案:

答案 0 :(得分:1)

您可以这样打电话:

 List<Claims> l = (List<Claims>)em.createNamedQuery("Claims.findByMgrname")
   .setParameter("mgrname", MgrName)
   .setParameter("stat", statVar)
   .getResultList();

答案 1 :(得分:0)

我在谷歌搜索后得到了它

对于来这里看的人来说,这是一个很好的链接Named JPA Query With Two Parameters