Ответ 1
Когда вы выполняете этот запрос, вместо прямого доступа к списку объектов, как обычно, вы получите список Object[]
.
Для каждого массива, который вы извлекаете, первым элементом будет имя строки, второе - счет.
Я не думаю, что вы можете использовать RowMapper
с JPA. RowMapper
происходит от Spring, что не является той же структурой, что и JPA. Возможно, некоторые реализации JPA позволяют это, но я не думаю, что это разумно сделать.
Изменить - Пример кода:
List<Object[]> results = entityManager
.createQuery("SELECT m.name AS name, COUNT(m) AS total FROM Man AS m GROUP BY m.name ORDER BY m.name ASC");
.getResultList();
for (Object[] result : results) {
String name = (String) result[0];
int count = ((Number) result[1]).intValue();
}