如何在servlet中使用JSONObject创建多级JSON数据

时间:2017-03-21 01:29:59

标签: java json servlets multi-level

我需要创建如下的JSON数据,

{
  "min": {
    "week": "1",
    "year": "2014"
  },
  "max": {
    "week": "14",
    "year": "2017"
  }
}

但是JSONObject只接受“id”,“value”格式。 那么如何使用JSONObject创建JSON数据,如上所述。

2 个答案:

答案 0 :(得分:1)

已经在eclipse中为你测试了这个。 `

String s = "{ \"min\": { \"week\": \"1\", \"year\": \"2014\" }, \"max\": { \"week\": \"14\", \"year\": \"2017\" } }";
JSONParser parser = new JSONParser();
try {
    JSONObject json = (JSONObject) parser.parse(s);
    System.out.println(json.get("min"));
    // this will output
    //{"week":"1","year":"2014"}
} catch (Exception e){
    e.printStackTrace();
}

`

答案 1 :(得分:1)

这很容易,这是一个例子:

JSONObject min = new JSONObject();
min.put("week", "1");
min.put("year", "2014");

JSONObject max = new JSONObject();
max.put("week", "14");
max.put("year", "2017");

JSONObject json= new JSONObject();
stats.put("min", min);
stats.put("max", max);

System.out.println(json.toString());