由于以下SQL请求,我有一些返回对象和计数的方法
public List<Sales> mostLoyal() {
String queryString = "SELECT s, COUNT(s.saleId) as TotalNum FROM Sales s GROUP BY s.custId.custLastName ORDER BY TotalNum DESC";
List<Sales> breakdown = em.createQuery(queryString).setMaxResults(10).getResultList();
return breakdown;
}
我正在尝试将此List转换为包含对象(请求中的s)和计数的Hashmap。我已经尝试了很多东西,但我不知道如何做到这一点的生活。
目标是将此Hashmap返回到json。
答案 0 :(得分:1)
您可以简单地遍历列表并将值放在HashMap中并返回它。应该很简单。
public Map<String,Integer> mostLoyal() {
Map<String,Integer> m = new HashMap<String,Integer>();
String queryString = "SELECT s, COUNT(s.saleId) as TotalNum FROM Sales s GROUP BY s.custId.custLastName ORDER BY TotalNum DESC";
List<Sales> breakdown = em.createQuery(queryString).setMaxResults(10).getResultList();
for(Sales sale: breakdown){
m.put(sale.getS(),sale.getCount());
}
return m;
}