JSON格式
{
"name": "张三",
"info": "单身青年",
"friends": ["赵四", "李一", "王二", {
"info": "现充",
"phone": "9527"
}],
"phone": "4399"
}
JSON转化与解析
gson
//1、创建Gson对象
Gson gson = new Gson();
//2、创建要转化的对象
Man man = new Man("张三","普普通通的青年","没有","9527");
//2、调用toJson方法,传入要转化的对象
String json = gson.toJson(man);
System.out.println(json);
//1、创建Gson对象
Gson gson = new Gson();
//2、调用fromJson方法,传入要转化的JSON字符串和要转化的类
Man man = gson.fromJson("{\"name\":\"张三\",\"info\":\"普普通通的青年\",\"friend\":\"没有\",\"phone\":\"9527\"}",Man.class);
System.out.println(man.getName());
//1、创建Gson对象
Gson gson = new Gson();
//2、调用fromJson方法,传入要转化的JSON字符串和要转化的类
HashMap hash = gson.fromJson("{\"name\": \"张三\",\"info\": \"单身青年\",\"friends\": [\"赵四\", \"李一\", \"王二\", {\"info\": \"现充\",\"phone\": \"9527\"}],\"phone\": \"4399\"}", HashMap.class);
System.out.println(hash.get("friends"));
JSON字符串转为哈希表,内部原理是将JSON字符串作为一个ArrayList集合存入哈希表里,运行hash.get("friends").getclass
得到的结果为class java.util.ArrayList
fastjson
String json = JSON.toJSONString(new Man("张三","普普通通的青年","没有","9527"));
System.out.println(json);
Man man = JSON.parseObject("{\"friend\":\"没有\",\"info\":\"普普通通的青年\",\"name\":\"张三\",\"phone\":\"9527\"}",Man.class);
System.out.println(man.toString());