2
 //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);

必要な出力:{名前:something1、ステータス:up}、{名前:something2、ステータス:down}...など

4

3 に答える 3

2

JSONArrayが必要です:

JSONArray jsonarray = new JSONArray(); jsonarray.add(object)...
于 2011-06-20T13:43:42.450 に答える
0

{name: something1, status: up}, {name: something2, status: down}有効なJSONではないの代わりに、などの配列構造をターゲットにすることをお勧めし[{name: something1, status: up}, {name: something2, status: down}]ます。だから、あなたはこれをあなたがすでに持っているものと同じように構築されたnet.sf.json.JSONArray、追加して構築するでしょう。JSONObjectsもちろん、2つの異なるものにするために変更する必要がありますJSONObjects。それぞれの要素には、要素「name」と「status」がそれぞれ1回だけ追加されます。

于 2011-06-20T13:44:16.837 に答える
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);
于 2011-06-20T13:44:24.433 に答える