Я создал репозиторий, который расширяет CrudRepository, в этом репозитории есть метод с нотацией @Query:
Код:
@Query("select itemType, count(*) as count from Item where User_id = :userId group by itemType")
List<Map<String, Long>> countItemsForUser(@Param("userId") Long userId);
Проблема, с которой я столкнулся, заключается в том, что он возвращает ArrayList of Object(s), а не список карт. Я где-то читал, что JPA не может вернуть карту, поэтому я помещаю результат в список>.
Я не знаю, как лучше всего обойти эту проблему или как быстро получить доступ к данным результатов. Я пробовал приведение типов, но это тоже не сработало:
for(Object item: items) {
Map<String,Long> castedItem = (HashMap<String,Long>)item;
}