I have a function which is returning Data as List
in java class. Now as per my need, I have to convert it into Json
Format.
Below is my function code snippet:
public static List<Product> getCartList() { List<Product> cartList = new Vector<Product>(cartMap.keySet().size()); for(Product p : cartMap.keySet()) { cartList.add(p); } return cartList; }
I tried To convert into json
by using this code but it is giving type mismatch error as function is of type List…
public static List<Product> getCartList() { List<Product> cartList = new Vector<Product>(cartMap.keySet().size()); for(Product p : cartMap.keySet()) { cartList.add(p); } Gson gson = new Gson(); // convert your list to json String jsonCartList = gson.toJson(cartList); // print your generated json System.out.println("jsonCartList: " + jsonCartList); return jsonCartList; }
Please help me resolve this.
Advertisement
Answer
public static List<Product> getCartList() { JSONObject responseDetailsJson = new JSONObject(); JSONArray jsonArray = new JSONArray(); List<Product> cartList = new Vector<Product>(cartMap.keySet().size()); for(Product p : cartMap.keySet()) { cartList.add(p); JSONObject formDetailsJson = new JSONObject(); formDetailsJson.put("id", "1"); formDetailsJson.put("name", "name1"); jsonArray.add(formDetailsJson); } responseDetailsJson.put("forms", jsonArray);//Here you can see the data in json format return cartList; }
you can get the data in the following form
{ "forms": [ { "id": "1", "name": "name1" }, { "id": "2", "name": "name2" } ] }