//create the JSON Object to pass to the client
JSONObject object=new JSONObject();
//one instance
object.put("name","something2");
object.put("status", "up");
//second instance
object.put("name", "something2");
object.put("status", "down");
String json = object.toString();
response.getOutputStream().print(json);
System.out.println("JSON Contents: "+json);
所需的输出:{name:something1,status:up},{name:something2,status:down} ... etc
答案 0 :(得分:2)
您需要拥有JSONArray:
JSONArray jsonarray = new JSONArray(); jsonarray.add(object)...
答案 1 :(得分:0)
我建议使用{name: something1, status: up}, {name: something2, status: down}
等数组结构,而不是[{name: something1, status: up}, {name: something2, status: down}]
,而不是有效的JSON。因此,您可以使用net.sf.json.JSONArray
构建此代码,添加JSONObjects
,与您已经拥有的内容类似。当然,您需要将其更改为两个不同的JSONObjects
,每个{{1}}都会添加元素“name”和“status”,每个元素只添加一次。
答案 2 :(得分:0)
在这种情况下,您必须改为使用JSONArray
。
List<Map> list = new ArrayList<HashMap>();
Map map1 = new HashMap();
map1.put("name","something");
Map map2 = new HashMap();
map2.put("status", "up");
list.add(map1);
list.add(map2);
JSONArray array = JSONArray.fromObject(list);
String json = array.toString();
System.out.println("JSON: "+ json);