json是一种轻量级的数据交换格式。
一个简单的json数据示例:
{
"name":"xiaoming",
"age":18,
"gender","boy",
"hobby":["basketball","football","badminton"]
}
json的相关jar包:
commons-lang-1.0.4.jar
commons-collections-2.1.jar
commons-beanutils-1.8.0.jar
json-lib-2.4.jar
ezmorph-1.0.6.jar
commons-logging-1.1.jar
需要说明几点:
(1)json-lib最新版本可以从这个地方下载:http://sourceforge.net/projects/json-lib/files/json-lib/
(2)ezmorph是一个简单的java类库,用于将一种bean转换成另外一种bean。其动态bean的实现依赖于commons-beanutils包。ezmorph可以在这个地方下载源码:http://sourceforge.net/projects/ezmorph/files/ezmorph/
(3)commons-beanutils是操作Java Bean的类库,依赖于commons-collections。
(4)commons-collections类库是各种集合类和集合工具类的封装。
json的中的对象和方法
1)JSONObject:JSON对象{ }。
2)JSONArray:JSON数组对象,[{},{}]。
3)fromObject(object):把对象转换为JSON对象。
4)JSONObject.accumulate(key,value):向JSONObject中增加JSON数据,可以重复。
5)JSONObject element (String key, Object value) 将键/值对放到这个JSONObject对象里面。如果当前value为空(null),那么如果这个key存在的话,这个key就会移除掉。如果这个key之前有value值,那么此方法会调用accumulate()方法。
6)toString(i,i):将JSON对象转换为字符串,如果包含参数,是将其美化后输出。
7) JSONObject accumulate (String key, Object value) 累积value到这个key下。这个方法同element()方法类似,特殊的是,如果当前已经存在一个value在这个key下那么自动生成一个JSONArray将会存储在这个key下来保存所有累积的value。如果已经存在一个JSONArray,那么当前的value就会添加到这个JSONArray中