2017-02-18 95 views
0

在我的HTML頁面我想能夠區分two lists來自servlet,所以我想發送每一個獨立於另一個,但都在相同的響應servlet如何將兩個Json列表從Java Servlet傳遞到HTML頁面?

我用在servlet下面的代碼通過一個列表:Coll1Json

Gson gson = new Gson(); 
String Coll1Json = gson.toJson(Coll1, UAppConstants.CHANNEL_COLLECTION); 
String Coll2Json = gson.toJson(Coll2, UAppConstants.CHANNEL_COLLECTION); 
PrintWriter writer = response.getWriter(); 
writer.println(Coll1Json);     //here only Coll1Json is passed 
writer.close(); 

我想送都Coll1JsonColl2Json

如何我能解決這個問題,並如何我可以發送後controllerHTML頁讀取他們兩個?

感謝

+0

將它們組合成一個json數組 – mike510a

回答

1

您可以創建一個包裝類,並添加里面都json字符串,如:

public class Response{ 
    //constructors 
    private String Coll1Json; 
    private String Coll2Json; 
    //Setters and Getters 
} 

在代碼中,你可以簡單地做到以下幾點:

String Coll1Json = gson.toJson(Coll1, UAppConstants.CHANNEL_COLLECTION); 
String Coll2Json = gson.toJson(Coll2, UAppConstants.CHANNEL_COLLECTION); 
PrintWriter writer = response.getWriter(); 
writer.println(new Response(Coll1Json, Coll2Json));      
writer.close(); 
0

您可以將JOSN添加到數組列表,然後將ArrayList轉換爲JSON響應。

List<DataObject> objList = new ArrayList<DataObject>(); 
    objList.add(Coll1Json); 
    objList.add(Coll2Json);  
    // Convert the object to a JSON string 
    String json = new Gson().toJson(objList); 
    PrintWriter writer = response.getWriter(); 
    writer.println(Coll1Json);      
    writer.close();