JSON
基本类型
{
"name": "张三",
"age": 18,
"sex": true
}
数组类型
[
{
"name": "张三",
"age": 18,
"sex": true
},
{
"name": "李四",
"age": 19,
"sex": false
}
]
对象嵌套
{
"name": "teacher",
"computer": {
"CPU":"intel7,
"disk": "512G"
},
"students": [
{
"name": "张三",
"age": 18,
"sex": true
},
{
"name": "李四",
"age": 19,
"sex": false
}
]
}
Json 解析成 java 对象
User user1 = new User("小平", "吉安", false);
Gson gson = new Gson();
String json = gson.toJson(user1);
System.out.println(json);
String json2 = "{\"name\":\"小平\",\"address\":\"吉安\",\"sex\":false}";
Gson gson2 = new Gson();
User user2 = gson.fromJson(json2, User.class);
System.out.println(user2);
Json 解析 成 List
List<User> userList = new ArrayList<>();
userList.add(new User("余爽","宜春",true));
userList.add(new User("刘杭","萍乡",true));
userList.add(new User("万鲲","长沙",true));
Gson gson = new Gson();
String json = gson.toJson(userList);
System.out.println(json);
String json1 = "[{\"name\":\"余爽\",\"address\":\"宜春\",\"sex\":true},{\"name\":\"刘杭\",\"address\":\"萍乡\",\"sex\":true},{\"name\":\"万鲲\",\"address\":\"长沙\",\"sex\":true}]";
Gson gson1 = new Gson();
List<User> userList1 = gson1.fromJson(json1, new TypeToken<List<User>>(){}.getType());
for (User user : userList1) {
System.out.println(user);
}
Json 解析 成 map
Map<String, Object> map = new HashMap<>();
map.put("id", "008");
map.put("user", new User("余爽","宜春",true));
Gson gson = new Gson();
String json = gson.toJson(map);
System.out.println(json);
String json1 = "{\"id\":\"008\",\"user\":{\"name\":\"罗碧娴\",\"address\":\"抚州\",\"sex\":false}}";
Gson gson1 = new Gson();
Map<String,Object> map1 = gson1.fromJson(json1, new TypeToken<Map<String,Object>>(){}.getType());
for (String key : map1.keySet()) {
System.out.println(key + ":" + map1.get(key));
}