SON 即 JavaScript Object Natation ,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互。本文将快速讲解 JSON 格式,并通过代码示例演示如何分别在客户端和服务器端进行 JSON 格式数据的处理。
Json 必需的包
commons-httpclient-3.1.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/
中下载到。
出现 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); |