json数据格式解析3–利用第三方json-lib进行解析json

本文转自:http://www.happyalaric.com/archives/396

前两节讲过了json数据格式和json解析原理,为了不重复发明轮子,我们这节来介绍利用第三方jar工具来解析数据。

首先我们还是到json.org,来下载jar帮助我们解析json数据。

我们在官方选择java下面的

json-lib

一、介绍

json-lib是一个java类库,提供将Java对象,包括beans,maps,collections,javaarraysandXML等转换成JSON,或者反向转换的功能。

二、下载

进入http://json-lib.sourceforge.net/点击左边download

选择home下面的json-lib到下载页面点击json-lib-2.4-jdk15-sources.jar,json-lib-2.4-jdk15-javadoc.jar直接下载,这个是源码利于我们学习。再下一份编译好的jarjson-lib-2.4-jdk15.jar。

下载地址:http://sourceforge.net/projects/json-lib/files/json-lib/json-lib-2.4/json-lib-2.4-jdk15-javadoc.jar

三、演练

将我们下载的json-lib-2.4-jdk15-sources.jar导入到我们的eclipse工程里面。

然后写个简单例子

packagejson;

importnet.sf.json.JSONArray;

importnet.sf.json.JSONObject;

/**

*

*【描述】:

*【作者】:alaric

*【时间】:Jun1,2012

*【文件】:jsonTest.java

*

*/

publicclassTest{

publicstaticvoidmain(String[]args){

JSONArrayjaArray=newJSONArray();

jaArray.add(“苹果”);

jaArray.add(1,“梨子”);

System.out.println(jaArray.toString());

StringjsonString=“{‘zhangsan’:'ddd’,'lisi’:'ddddd’}”;

JSONObjectjsonObject=JSONObject.fromObject(jsonString);

System.out.println(jsonObject.get(“zhangsan”));

System.out.println(jsonObject.get(“lisi”));

}

}

结果报

Exceptioninthread“main”java.lang.NoClassDefFoundError:org/apache/commons/lang/exception/NestableRuntimeException

这样一来就知道是依赖别的包了

再回到http://json-lib.sourceforge.net/一看发现有这么一段

Json-libcomesintwoflavors,dependingonthejdkcompatibility.json-lib-x.x-jdk13iscompatiblewithJDK1.3.1andupwards.json-lib-x.x-jdk15iscompatiblewithJDK1.5,includessupportforEnumsinJSONArrayandJSONObject.Pleasereffertotheappropriatejavadoclinksavailableintheprojectmenu.

Json-librequires(atleast)thefollowingdependenciesinyourclasspath:

jakartacommons-lang2.5

jakartacommons-beanutils1.8.0

jakartacommons-collections3.2.1

jakartacommons-logging1.1.1

ezmorph1.0.6

OtherdependenciesareneededifworkingwithXMLandGroovy.PleasereviewtheDependenciesreporttoknowmoreaboutthoseextradependencies.

意思是说后缀是13的依赖于jdk1.3,15的依赖于jdk1.5在JSONArray和JSONObject中也支持枚举

json-lib至少需要依赖你的classpath上面那些包。

点击下面的连接下载这些依赖

查看依赖树

[img]json数据格式解析3–利用第三方json-lib进行解析json[/img]

下载后倒入工程:

运行程序

输出:

["苹果","梨子"]

ddd

ddddd

相关推荐