Jackson ArrayNode.add Java函数出现问题

我有一个函数,应该更改具有某些数组对象的Object上的某些值。

此对象是:

{"avg":{"00:00":[],"01:00":[],"02:00":[],"03:00":[],"04:00":[],"05:00":[],"06:00":[],"07:00":[],"08:00":[],"09:00":[],"10:00":[],"11:00":[],"12:00":[],"13:00":[],"14:00":[],"15:00":[],"16:00":[],"17:00":[],"18:00":[],"19:00":[],"20:00":[],"21:00":[],"22:00":[],"23:00":[]},"avg_hum":{"00:00":[],"max":{"00:00":[],"min":{"00:00":[],"max_hum":{"00:00":[],"min_hum":{"00:00":[],"beginDate":"","endDate":""}

我需要向数组中添加值(例如:{“ 00:00”:[25],...})

因此,我尝试了类似的操作(“ data_raw”是接收的对象):

ArrayNode array = mapper.createArrayNode();

array = (ArrayNode) data_raw.get("avg").get("00:00");

array.add((double) 25.11666711171468);

System.out.println("data_raw: " + data_raw.toString());

结果(“ data_raw”对象)为:

data_raw: {"avg":{"00:00":[25.11666711171468],"avg_hum":{"00:00":[25.11666711171468],"max":{"00:00":[25.11666711171468],"min":{"00:00":[25.11666711171468],"max_hum":{"00:00":[25.11666711171468],"min_hum":{"00:00":[25.11666711171468],"endDate":""}

我希望仅更改“ avg”:{“ 00:00”:[X],...},但是无论选择的“主字段”如何,所有具有“ 00:00”名称的对象都将被替换。 :“ avg”。

有人可以帮我吗?

编辑:

完成相关代码:

String[] name_db_data = {"avg","avg_hum","max","min","max_hum","min_hum"};
SimpleDateFormat hourFormatted = new SimpleDateFormat("HH:mm");
reType = reportType.detailedDailyReport;
ResultSet rs = stm.executeQuery(query); // The String "query" is a dynamic MySQL query.

while(rs.next())
            {
                if(reType == reportType.detailedDailyReport)
                {
                    int count4 = 0;

                    Calendar c = Calendar.getInstance();
                    c.setTime(rs.getTime("hour"));

                    for(count4 = 0; count4 < name_db_data.length; count4 ++)
                    {
                        ArrayNode array_aux2 = mapper.createArrayNode();
                        array_aux2 = (ArrayNode) data_raw.get(name_db_data[count4]).get(hourFormatted.format(c.getTime()));
                        array_aux2.add(rs.getDouble(name_db_data[count4]));
                    }

                }
zhengbanririye 回答:Jackson ArrayNode.add Java函数出现问题

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3156350.html

大家都在问