Java 包括带有Gson的顶级元素
我有一个像这样的POJOJava 包括带有Gson的顶级元素,java,json,gson,Java,Json,Gson,我有一个像这样的POJO public class Pojo { ... public static String toJson(ArrayList<Pojo> pojos) { Gson gson = new Gson(); return gson.toJson(pojos); } } 但我想要的是: { "pojos": [ { "arrival": "19:12:30", "typeOf
public class Pojo {
...
public static String toJson(ArrayList<Pojo> pojos) {
Gson gson = new Gson();
return gson.toJson(pojos);
}
}
但我想要的是:
{
"pojos": [
{
"arrival": "19:12:30",
"typeOfDay": "regular",
"stopCode": "CMPZ",
"route": "B",
"id": 1
},
{
"arrival": "19:13:30",
"typeOfDay": "regular",
"stopCode": "AVSV",
"route": "B",
"id": 2
}
]
}
我怎么能做到?我使用的是Gson 2.2.4,我不知道Gson是什么,但我想类似的东西会起作用
return gson.toJson({pojos:pojos});
按以下方式更改您的方法:
public static String toJson(List<Pojo> pojos) {
Gson gson = new Gson();
Map m = new TreeMap();
m.put("pojos", pojos);
return gson.toJson(m);
}
公共静态字符串toJson(列出POJO){
Gson Gson=新的Gson();
Map m=新树映射();
m、 put(“pojos”,pojos);
返回gson.toJson(m);
}
顺便说一句,请注意,我更改了签名,更喜欢在方法中使用接口(
List
),而不是实现(ArrayList
)。谢谢,但我使用的是Java,我认为这不起作用。
public static String toJson(List<Pojo> pojos) {
Gson gson = new Gson();
Map m = new TreeMap();
m.put("pojos", pojos);
return gson.toJson(m);
}