Java Spring数据jpa-返回图

Java Spring数据jpa-返回图,java,spring,rest,spring-data-jpa,Java,Spring,Rest,Spring Data Jpa,我有一个数据库,里面有各种各样的值,都与日期有关。我想做的是返回一个带有日期的映射,以及与日期相关的所有值的平均值。每次我提出请求,都会得到以下响应: { "timestamp": 1473327111738, "status": 500, "error": "Internal Server Error", "exception": "org.springframework.dao.IncorrectResultSizeDataAccessException",

我有一个数据库,里面有各种各样的值,都与日期有关。我想做的是返回一个带有日期的映射,以及与日期相关的所有值的平均值。每次我提出请求,都会得到以下响应:

{
    "timestamp": 1473327111738,
    "status": 500,
    "error": "Internal Server Error",
    "exception": "org.springframework.dao.IncorrectResultSizeDataAccessException",
    "message": "result returns more than one elements; nested exception is javax.persistence.NonUniqueResultException: result returns more than one elements",
    "path": "/dailyAverage"
}
我的代码:

@Query("SELECT du.date, avg(du.usage) FROM DataUsageModel du WHERE du.date BETWEEN :start_time AND :end_time GROUP BY day(du.date)")
Map<String, Double> findDailyAverages(@Param("start_time") LocalDateTime startTime, @Param("end_time") LocalDateTime endTime);
@Query(“从DataUsageModel du中选择du.date,avg(du.usage),其中du.date介于:开始时间和:结束时间组之间,按天(du.date)”)
映射findDailyAverages(@Param(“开始时间”)LocalDateTime开始时间,@Param(“结束时间”)LocalDateTime结束时间);

以上是一个json对象。必须有调用findDailyAverages方法并将其转换为Json对象的代码。如果不想更改,那么解析JSONObject(上面的响应)并创建HashMap

public static void jsonToMap(String t) throws JSONException {

    HashMap<String, String> map = new HashMap<String, String>();
    JSONObject jObject = new JSONObject(t);
    Iterator<?> keys = jObject.keys();

    while( keys.hasNext() ){
        String key = (String)keys.next();
        String value = jObject.getString(key); 
        map.put(key, value);

    }

    System.out.println("json : "+jObject);
    System.out.println("map : "+map);
}
publicstaticvoidjsontomap(字符串t)抛出JSONException{
HashMap=newHashMap();
JSONObject jObject=新的JSONObject(t);
迭代器keys=jObject.keys();
while(keys.hasNext()){
字符串键=(字符串)键。下一步();
字符串值=jObject.getString(键);
map.put(键、值);
}
System.out.println(“json:+jObject”);
System.out.println(“map:+map”);
}
使用所选字段构造函数创建新模式(DataModal) 范例


DataModal中的此返回值作为列表

尝试将列表作为返回类型问题是什么?
class DataModal{
  Date date;
  Float usage;
  DataModal(Date date, Float usage){
  this.date=date;
  this.usage=usage;
  }
} 



@Query("SELECT new DataModal(du.date, avg(du.usage) as usage) FROM      DataUsageModel du WHERE du.date BETWEEN :start_time AND :end_time GROUP BY day(du.date)")