java解析json之gjson和fastjson
json的幾種格式:
json對(duì)象————javabean格式
{"age":1,"id":"1","name":"fastjson"}
json數(shù)組————List<javabean>格式
json字符串:[{"age":1,"id":"1","name":"fastjson1"},{"age":2,"id":"2","name":"fastjson2"}]
json字符串————List<String>格式
json字符串:["fastjson1","fastjson2","fastjson3"]
另一種json數(shù)組————List<Map<String,Object>>格式
json字符串:[{"key1":"value1","key2":"value2"},{"key1":1,"key2":2}]
fastjson解析json:
將上面的四種數(shù)據(jù)對(duì)象轉(zhuǎn)換成json字符串的方法都是一樣的
String jsonString = JSON.toJSONString(obj);
解析json:
將json字符串轉(zhuǎn)化成JavaBean對(duì)象
Person person = new Person("1","fastjson",1);
//這里將javabean轉(zhuǎn)化成json字符串
String jsonString = JSON.toJSONString(person);
//這里將json字符串轉(zhuǎn)化成javabean對(duì)象,
person =JSON.parseObject(jsonString,Person.class);
將json字符串轉(zhuǎn)化成List<JavaBean>對(duì)象
Person person1 = new Person("1","fastjson1",1);
Person person2 = new Person("2","fastjson2",2);
List<Person> persons = new ArrayList<Person>();
persons.add(person1);
persons.add(person2);
String jsonString = JSON.toJSONString(persons);
System.out.println("json字符串:"+jsonString);
//解析json字符串
List<Person> persons2 = JSON.parseArray(jsonString,Person.class);
將json字符串轉(zhuǎn)化成List<String>對(duì)象
List<String> list = new ArrayList<String>();
list.add("fastjson1");
list.add("fastjson2");
list.add("fastjson3");
String jsonString = JSON.toJSONString(list);
System.out.println("json字符串:"+jsonString);
//解析json字符串
List<String> list2 = JSON.parseObject(jsonString,new TypeReference<List<String>>(){});
4. 將json字符串轉(zhuǎn)化成List<Map<String,Object>>對(duì)象
Map<String,Object> map = new HashMap<String,Object>();
map.put("key1", "value1");
map.put("key2", "value2");
Map<String,Object> map2 = new HashMap<String,Object>();
map2.put("key1", 1);
map2.put("key2", 2);
List<Map<String,Object>> list = new ArrayList<Map<String,Object>>();
list.add(map);
list.add(map2);
String jsonString = JSON.toJSONString(list);
System.out.println("json字符串:"+jsonString);
//解析json字符串
List<Map<String,Object>> list2 = JSON.parseObject(jsonString,new TypeReference<List<Map<String,Object>>>(){});
gson解析json:
將上面的四種數(shù)據(jù)對(duì)象轉(zhuǎn)換成json字符串的方法都是一樣的
Gson gson = new Gson();
String jsonString = gson.toJson(obj);
將json字符串轉(zhuǎn)化成JavaBean對(duì)象
Person person = new Person("1","gson",1);
Gson gson = new Gson();
//這里將javabean轉(zhuǎn)化成json字符串
String jsonString = gson.toJson(person);
System.out.println(jsonString);
//這里將json字符串轉(zhuǎn)化成javabean對(duì)象,
person = gson.fromJson(jsonString,Person.class);
將json字符串轉(zhuǎn)化成List<JavaBean>對(duì)象
Person person1 = new Person("1","gson1",1);
Person person2 = new Person("2","gson2",2);
List<Person> persons = new ArrayList<Person>();
persons.add(person1);
persons.add(person2);
Gson gson = new Gson();
//這里將lsit<javabean>轉(zhuǎn)化成json字符串
String jsonString = gson.toJson(persons);
//解析json字符串
List<Person> persons2 = gson.fromJson(jsonString, new TypeToken<List<Person>>(){}.getType());
將json字符串轉(zhuǎn)化成List<String>對(duì)象
List<String> list = new ArrayList<String>();
list.add("gson1");
list.add("gson2");
list.add("gson3");
Gson gson = new Gson();
String jsonString = gson.toJson(list);
System.out.println("json字符串:"+jsonString);
//解析json字符串
List<String> list2 = gson.fromJson(jsonString, new TypeToken<List<String>>(){}.getType());
將json字符串轉(zhuǎn)化成List<Map<String,Object>>對(duì)象
Map<String,Object> map = new HashMap<String,Object>();
map.put("key1", "value1");
map.put("key2", "value2");
Map<String,Object> map2 = new HashMap<String,Object>();
map2.put("key1", 1);
map2.put("key2", 2);
List<Map<String,Object>> list = new ArrayList<Map<String,Object>>();
list.add(map);
list.add(map2);
Gson gson = new Gson();
String jsonString = gson.toJson(list);
System.out.println("json字符串:"+jsonString);
//解析json字符串
List<Map<String,Object>> list2 = gson.fromJson(jsonString, new TypeToken<List<Map<String,Object>>>(){}.getType());
總結(jié)
以上是生活随笔為你收集整理的java解析json之gjson和fastjson的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 3月12日将发布首款VAIO智能手机超高
- 下一篇: 手机京东怎么看关注的商品?