Я пытаюсь написать универсальный метод, который может подобрать именованный запрос, установить в нем названные параметры и вернуть результат.
Метод выглядит следующим образом:
s = getSession();
q = s.getNamedQuery(nameOfTheQuery);
keySet = queryParams.keySet();
itr = keySet.iterator();
while(itr.hasNext()){
key = itr.next();
//Problem here
q.setParameter(key, queryParams.get(key));
}
q.setMaxResults(maxResults);
q.setFetchSize(fetchSize);
log.info("::>>>> Query result :"+(q.uniqueResult()));
Я пытаюсь установить для названных параметров значения здесь.Но когда параметр здесь является списком или коллекцией, я получаю ClassCastException
, в то время как q.uniqueResult()
Можно ли написать этот метод для поддержки коллекций и других типов параметров?Я должен установить maxResults и fetchSize, поэтому мне пришлось выбрать эту опцию.Любая помощь будет принята с благодарностью.Спасибо!