Когда я использую проект JSON-Lib, я могу создать с помощью командыСоздайте отдельную JSON строку с Gson
JSONObject jObject = new JSONObject();
jObject.accumulate("articles", list);
String json = jObject.toString();
Следующий выход:
{
"articles": [
{
"amount": "50",
"id": "1",
"pct": "50,00",
"price": "162,37",
"startamount": "100",
"stockvalue": "8118,45"
},
{
"amount": "20",
"id": "2",
"pct": "20,00",
"price": "164,83",
"startamount": "100",
"stockvalue": "3296,60"
},
{
"amount": "20",
"id": "3",
"pct": "20,00",
"price": "170,40",
"startamount": "100",
"stockvalue": "3408,00"
},...
]
}
Между тем я использую проект Gson и привязанный к нему. Но следующий код:
Gson gson = new Gson();
String json = gson.toJson(list);
даст мне этот выход:
[
{
"id": "1",
"amount": "50",
"startamount": "100",
"pct": "50,00",
"price": "162,37",
"stockvalue": "8118,45"
},
{
"id": "2",
"amount": "20",
"startamount": "100",
"pct": "20,00",
"price": "164,83",
"stockvalue": "3296,60"
},...]
элементов в моем списке являются объектами из моей Pojo статьи
public class Article implements IsSerializable {
private String id;
private String amount;
private String startamount;
private String pct;
private String price;
private String stockvalue;
public Article(){
}
//Setter & Getter
}
Как я могу создать с поможет Gson JSON-строка, подобная той, что JSON-Lib создаст (JSONObject с JSONArray, который включает JSONObjects). В будущем строка JSON будет/должна быть расширена с помощью большего количества массивов (а не статей, но других вещей).
Я извлекаю эту сгенерированную строку JSON из HttpServlet. Имеет смысл десериализовать Gson JSON String обратно в ArrayList или использовать типы GWT JavaScript Overlay?
Благодаря & BR, mybecks