XML能够表达有逻辑的数据,但有个缺点:
java
1:数据的冗余太多。json
<user id="U001">
<name>Jack</name>
<age>88</age>
<pwd>1234</pwd>
</user>spa
JSONcode
1:map类型的格式。 - 》map,bean 字符串
{name:"Jack",age:44,id:"U001"}get
2:list类型的格式。- > List,Set,Object[]ast
["Jack","mary"]class
3:能够嵌套使用test
[List
{id:"U001",name:"Jack",age:33},
{id:"U002",name:"rose",age:44}
]
JSON的解析,两种方式:
1:json-lib (apahce)下面例子使用这种解析方式
2: fast-json(版本已经固定)
jsonlib核心类:
JSONObject -用于解析map,bean _ > {}
JSONarray - 用于解析 list - > []
@Test public void test1() { // json字符串 String str = "{\"name\":\"Jack\",\"age\":33,\ "hobies\": [\"football\",\"MTV\",\"Climb\", {\"addr\":\"JN\"}]}"; JSONObject obj = JSONObject.fromObject(str); String name = obj.getString("name"); System.err.println(name); Integer age = obj.getInt("age"); System.err.println(age); JSONArray array = obj.getJSONArray("hobies"); String h = array.getString(2); System.err.println(h); JSONObject oo = array.getJSONObject(3); String adr = oo.getString("addr"); System.err.println(adr); }