0

名前付き JPA クエリを作成しています。manager name と status を満たすすべてのレコードを取得する必要があります。これが私が作成した方法です。

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

ここで与えられた例に従って作成しました where 句のような名前付きクエリ

ただし、呼び出しがどのように見えるかはわかりません。たとえば、 setParameter を 2 つのフィールドで使用する方法がわかりません。これを別のクエリに使用しましたが、正常に動作します。

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

しかし、新しい NamedQuery には何を使用すればよいでしょうか? 私はそれを正しく理解できません。

4

2 に答える 2

1

あなたはこのように呼ぶことができます:

 List<Claims> l = (List<Claims>)em.createNamedQuery("Claims.findByMgrname")
   .setParameter("mgrname", MgrName)
   .setParameter("stat", statVar)
   .getResultList();
于 2013-03-22T02:43:24.417 に答える
0

もう少しググってみたらわかりました

ここに来てここを見ている人には、2つのパラメーターを持つJPAクエリという名前の良いリンクがあります

于 2013-03-21T18:12:21.253 に答える