google-GSON解析和生成JSON資料
阿新 • • 發佈:2018-12-31
public class GsonDemo {
public static void main(String[] args) {
Map map = new HashMap();
map.put("name", "nam1");
map.put("age", "12");
Gson gson = new Gson();
// 把java物件轉換成Json字串。
String jsonStr = gson.toJson(map);
System.out.println(jsonStr); // {"name":"nam1","age":"12"}
// json格式的字串
String str = "[{'name':'kevin','age':25},{'name':'cissy','age':24}]";
// 建立一個JsonParser
JsonParser parser = new JsonParser();
// 通過JsonParser物件可以把json格式的字串解析成一個JsonElement物件
JsonElement el = parser.parse(str);
// 把JsonElement物件轉換成JsonArray
JsonArray jsonArray = null;
if (el.isJsonArray()) {
jsonArray = el.getAsJsonArray();
}
// 遍歷JsonArray物件
DomeBean field = null;
Iterator it = jsonArray.iterator();
while (it.hasNext()) {
JsonElement e = (JsonElement) it.next();
// JsonElement轉換為JavaBean物件
field = gson.fromJson(e, DomeBean.class);
System.out.println(field);
//DomeBean [name=kevin, age=25]
//DomeBean [name=cissy, age=24]
}
}
}
class DomeBean {
private String name;
private Integer age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
@Override
public String toString() {
return "DomeBean [name=" + name + ", age=" + age + "]";
}
}