我如何只得到忽略钥匙的价值

时间:2015-08-12 05:38:50

标签: java json

我在数据库中有一个json数组。我想只获得忽略密钥的值并将其发送到ajax调用。

保存的Json字符串:

{
    "cells": 
    [
        {
            "type": "devs.TooledModel",
            "position": 
            {
                "x": 200,
                "y": 100
            },
            "size": 
            {
                "width": 71,
                "height": 100
            },
                ".": 
            {
                    "magnet": false
            }
        }
    ]
}

我想从数据库返回确切的json数组,但我得到一个附加的键,因为我在java servlet中使用map来检索json:

List<Map<String, Object>> result = new ArrayList<>();

    while (rSet.next()) {
        Map<String, Object> row = new HashMap<>();
        row.put("JSON_Diagram", rSet.getString("JSON_INFO"));
        result.add(row);
    }

json收到:JSON_Diagram: "cells%5B0%5D%5Btype%5D=devs.TooledModel&cells..

如何删除密钥JSON_Diagram并获取唯一值?试过Object value = result.get(0);但没有工作

2 个答案:

答案 0 :(得分:1)

所以,一旦你有了地图,就做一个map.values

[http://docs.oracle.com/javase/7/docs/api/java/util/Map.html#values()][1]

然后只使用生成的集合!

答案 1 :(得分:1)

您需要获取所有键的列表,循环遍历它们并将它们添加到地图中,如果只需要将值添加值列表,如下例所示:

Map<String,Object> row  = new HashMap<String,Object>();
    Iterator iter = rSet.keys();
    while(iter.hasNext()){
        String key = (String)iter.next();
        String value = rSet.getString(key);
        row.put(key,value);
        result.add(value);

    }
相关问题