标签:
1,首先我们要先明白json与gson有什么区别
其实他们是完全不同的概念:
json是一种数据格式,便于数据传输,存储,交换。
gson则是一种组件库,就是通过Gson我们可以把java中的对象(gson.toJson()),转换成Json字符串,当然反过来也是可以的(gson.fromJson);
2,代码
首先我们需要JSon和Gson这两个jar包
package com.json.dome;
import java.util.ArrayList;
import java.util.List;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import com.google.gson.Gson;
import com.google.gson.JsonArray;
import com.google.gson.JsonObject;
import com.google.gson.reflect.TypeToken;
public class JsonDome {
public static void main(String[] args) {
// TODO 自动生成的方法存根
//生成json
List<Student> arrayList=new ArrayList<Student>();
Student stu1=new Student("张三", "男");
Student stu2=new Student("李四", "男");
Student stu3=new Student("王二", "女");
arrayList.add(stu1);
arrayList.add(stu2);
arrayList.add(stu3);
Gson gson=new Gson();
//gson.toJson(student);//对单个实例操作
//将对象的集合转换成json字符串
String json=gson.toJson(arrayList);
System.out.println(json);
//解析json
//对单个实例操作
gson.fromJson(json,Sutdent.Class);//json为要解析的字符串,Sutdent.Class为对应的对象
//这里生成的是一个实例集合
List<Student> arraylist=gson.fromJson(json, new TypeToken<List<Student>>(){}.getType());
for(Student stu:arraylist)
{
System.out.println(stu.name+" "+stu.sex);
}
}
}
class Student
{
String name;
String sex;
public Student(String name, String sex) {
super();
this.name = name;
this.sex = sex;
}
}
虽然使用JSONObject对象的方法也能够解析json字符串,但是显然我们这样做,会更简单
望不吝赐教!
标签:
原文地址:http://www.cnblogs.com/jiuzheyange/p/4759012.html