Как я могу получить доступ к значениям, возвращаемым Hibernate Query? - PullRequest
1 голос
/ 23 июня 2011

Как я могу получить доступ к элементам из списка, созданного как показано ниже? Я попытался создать класс, содержащий String и int, и привести его к нему, но он не работает.

 List SOList = iadao.getSession().createQuery("select a.sistemOperare, count(a.sistemOperare) from User a, IstoricAfisari b, Banner c, Advertiser d where b.bannerId = c.id and c.advertiserId = d.id and b.userId = a.id group by a.sistemOperare").list();

Спасибо

Ответы [ 2 ]

3 голосов
/ 23 июня 2011

Поскольку createQuery (HQL) .list () возвращает список, соответствующий индексам выбранных полей:

List SOList = ...
for (Object obj : SOList) {
    Object[] fields = (Object[]) obj;
    System.out.println("sistemOperare = " + fields[0] + " (count = " + fields[1] + ")");
}

Распечатывает результаты запроса, если таковые имеются.В соответствии с документацией по гибернации, которую я мог найти (поскольку я больше привык к созданию критериев для объектов, которые я хочу, а затем использую Java для остальных).

3 голосов
/ 23 июня 2011

При этом получается список массивов объектов -> List<Object[]>

...