如果我的实体是作为Man获取的,它有name,id属性,JPA如何获取此查询的检索结果,
entityManager.createQuery("SELECT m.name AS name, COUNT(m) AS total FROM Man AS m GROUP BY m.name ORDER BY m.name ASC");
Run Code Online (Sandbox Code Playgroud)
有没有办法使用 org.springframework.jdbc.core.RowMapperJPA?
Viv*_*sse 48
当您执行此查询时,您将检索一个列表,而不是像往常一样直接获取对象列表Object[].
对于您检索的每个数组,第一个元素将是行的名称,第二个元素将是计数.
我不认为你可以使用RowMapperJPA.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();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
48688 次 |
| 最近记录: |