Json解析:
1.json第三方解析包:json-lib、gson、jackson、fastjson等
2.Google-gson只兼容jdk1.5版本以上;JSON-lib分别支持1.4和1.5
3.性能:Gson > Json-lib
包:gson-2.3.jar
特征:
fromJson():Json-解析->对象(反序列化)
toJson() :对象-生成->Json(序列化)
示例:
import com.google.gson.Gson; public class TestGson { class Person { private String name; private int[] power; private Horse hs1; private Horse[] hs2; public Horse getHs1() { return hs1; } public void setHs1(Horse hs1) { this.hs1 = hs1; } public Horse[] getHs2() { return hs2; } public void setHs2(Horse[] hs2) { this.hs2 = hs2; } public int[] getPower() { return power; } public void setPower(int[] power) { this.power = power; } public String getName() { return name; } public void setName(String name) { this.name = name; } } class Horse { private String type; public String getType() { return type; } public void setType(String type) { this.type = type; } } public static void main(String[] args) { String strJson = "{‘name‘:‘吕奉先‘,‘power‘:[100,30],‘hs1‘:{‘type‘:‘赤兔‘},‘hs2‘:[{‘type‘:‘乌骓‘},{‘type‘:‘黄标‘}]}"; Gson g = new Gson(); // Json->对象 Person p = g.fromJson(strJson, Person.class); System.out.println(p.name + ":" + p.power[1]); //对象->Json p.setName("关羽"); String json = g.toJson(p); System.out.println(json); } }
代码中json字符串的结构化视图:
运行结果:
吕奉先:30
{"name":"关羽","power":[100,30],"hs1":{"type":"赤兔"},"hs2":[{"type":"乌骓"},{"type":"黄标"}]}
原文:http://www.cnblogs.com/AndyHoo/p/6375962.html