2011-07-05 22 views
1

我需要構建JSON響應這種格式無法構建這種格式

{ 
    label : "name", 
    items : [ 
     {name : "Name1"}, 
     {name : "Name2"} 
    ] 
} 

在我的Servlet程序,我用這種方式

List list = new ArrayList(); 

     for (int i = 0; i <= 10; i++) { 
      list.add("Test"); 
     } 

     JSONObject json = new JSONObject(); 
     json.put("label", "name"); 
     json.put("items", list.toArray()); 

     response.getWriter().write(json.toString()); 

使用此格式,當我檢查Firebug的JSON響應,迴應如下:

{"label":"name","items":["Test","Test","Test","Test","Test","Test","Test","Test","Test","Test","Test"]} 

請告訴我如何以這種格式構造。

回答

1

您必須在數組內創建對象。這應該工作:

List list = new ArrayList(); 

for (int i = 0; i <= 10; i++) { 
    JSONObject nextObject = new JSONObject(); 
    nextObject.put("name", "Name" + i); 
    list.add(nextObject); 
} 

JSONObject json = new JSONObject(); 
json.put("label", "name"); 
json.put("items", list.toArray()); 

response.getWriter().write(json.toString()); 
0

一件事,我想說,在你想要的JSON數據是一個數據結構,我們需要把JSON對象名單,然後把名單JSON對象全球化志願服務青年。 I think this link will help you.