当前位置: 代码迷 >> JavaScript >> JSON - JAVA 使用方法
  详细解决方案

JSON - JAVA 使用方法

热度:938   发布时间:2012-09-21 15:47:26.0
JSON --- JAVA 使用方法

? 使用 JSON 的方法

?

JSON? ? JavaScript Object Natation ,它是一种轻量级的数据交换格式,非常适合于服务器与 ? JavaScript? 的交互。本文将快速讲解 ? JSON? 格式,并通过代码示例演示如何分别在客户端和服务器端进行 ? JSON? 格式数据的处理。

?

Json 必需的包

commons-httpclient-3.1.jar(该包是否需要)

commons-beanutils-1.8.0.jar
commons-lang-2.4.jar
commons-logging-1.1.1.jar
json-lib-2.2.3-jdk13.jar
ezmorph-1.0.6.jar
commons-collections-3.2.1.jar

以上包可以从

http://commons.apache.org/index.html

http://json-lib.sourceforge.net/

http://ezmorph.sourceforge.net/

http://morph.sourceforge.net/

http://www.docjar.com/

中下载到。

出现 java.lang.NoClassDefFoundError: net/sf/ezmorph/Morpher 错误是因为没有导入 ezmorph.jar 文件或版本不对。

出现 java.lang.NoClassDefFoundError: org/apache/commons/collections/map/ListOrderedMap 错误是因为没有导入 commons-collections.jar 文件或版本不对。

Java 代码转换成 json 代码

1. ??????? List 集合转换成 json 代码

List list =? new ? ArrayList();

list.add(? "first" ? );

list.add(? "second" ? );

JSONArray jsonArray2 = JSONArray.fromObject ( list );

2. ??????? Map 集合转换成 json 代码

Map map =? new ? HashMap();

map.put( "name" ,? "json" );

map.put( "bool" , Boolean. TRUE );

map.put( "int" ,? new ? Integer(1));

map.put( "arr" ,? new ? String[] {? "a" ,? "b" ? });

map.put( "func" ,? "function(i){ return this.arr[i]; }" );

JSONObject json = JSONObject.fromObject (map);

3. ??????? Bean 转换成 json 代码

JSONObject jsonObject = JSONObject.fromObject(new JsonBean());

4. ??????? 数组转换成 json 代码

boolean [] boolArray =? new ? boolean [] {? true ,? false ,? true ? };

JSONArray jsonArray1 = JSONArray.fromObject (boolArray);

?

5.? 一般数据转换成 json 代码

JSONArray jsonArray3 = JSONArray.fromObject("['json','is','easy']" );

6. ??????? beans 转换成 json 代码

List list =? new ? ArrayList();

JsonBean2 jb1 =? new ? JsonBean2();

jb1.setCol(1);

jb1.setRow(1);

jb1.setValue( "xx" );

JsonBean2 jb2 =? new ? JsonBean2();

jb2.setCol(2);

jb2.setRow(2);

jb2.setValue( "" );

list.add(jb1);

list.add(jb2);

JSONArray ja = JSONArray.fromObject (list);

  相关解决方案