我有一個hashMap參數,其中包含<Sting,Value>
現在我想將這些值傳遞到兩個JPA列。如何將哈希映射作爲參數傳遞給JPA?
SELECT obj from x obj where x.no=?<String goes here> and x.amount=?<value goes here >
我該如何使用JPQL做到這一點?
我有一個hashMap參數,其中包含<Sting,Value>
現在我想將這些值傳遞到兩個JPA列。如何將哈希映射作爲參數傳遞給JPA?
SELECT obj from x obj where x.no=?<String goes here> and x.amount=?<value goes here >
我該如何使用JPQL做到這一點?
有了這個循環中,您可以通過Map
迭代爲所有鍵值對執行select statements
:
Query query = em.createQuery("SELECT obj from x obj where x.no=:x_no and x.amount=:x_amt");
List<ResultObj> resultList = new ArrayList<ResultObj>();
Iterator<Entry<String, Value>> iter = yourMap.entrySet().iterator();
while (iter.hasNext()) {
Entry<String, Value> next = iter.next();
Value value = next.getValue();
query.setParameter("x_no", next).setParameter("x_amt", value);
ResultObj result = (ResultObj) query.getSingleResult();
resultList.add(result);
}
鍵將事先知道,或者您想遍歷映射來執行所有鍵值對的查詢? –
@DebojitSaikia我想遍歷映射來執行所有鍵值對的查詢。 – VijayM