使用JSON的方法

JSON  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/

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 = newboolean[] { truefalsetrue };

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);


---------------------------------
源码说明:
---------------------------------

JsonBean2.java

package com.montersky.wap.tools;

public class JsonBean2 implements java.io.Serializable{

/**

 * 

 */

private static final long serialVersionUID = -4662760972533309454L;

private int col;

private int row;

private String value;

public int getCol() {

return col;

}

public void setCol(int col) {

this.col = col;

}

public int getRow() {

return row;

}

public void setRow(int row) {

this.row = row;

}

public String getValue() {

return value;

}

public void setValue(String value) {

this.value = value;

}

}

转换方式代码总结:

                //List集合转换成json代码

List list = new ArrayList();

list.add( "first" );

list.add( "second" );

JSONArray jsonArray2 = JSONArray.fromObject( list );

System.out.println("List集合转换成json代码");

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

//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);

System.out.println("Map集合转换成json代码");

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

//Bean转换成json代码

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

System.out.println("Bean转换成json代码");

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

//数组转换成json代码

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

JSONArray jsonArray1 = JSONArray.fromObject(boolArray);

System.out.println("数组转换成json代码");

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

//一般数据转换成json代码

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

System.out.println("一般数据转换成json代码");

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

//beans转换成json代码

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);

System.out.println("beans转换成json代码");

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


代码输出结果说明:

List集合转换成json代码

["first","second"]

Map集合转换成json代码

{"arr":["a","b"],"int":1,"name":"json","func":function(i){ return this.arr[i]; },"bool":true}

Bean转换成json代码

{"col":0,"row":0,"value":""}

数组转换成json代码

[true,false,true]

一般数据转换成json代码

["json","is","easy"]

beans转换成json代码

[{"col":1,"row":1,"value":"xx"},{"col":2,"row":2,"value":""}]


原文转载:http://blog.csdn.net/zhaixinlong/article/details/38477053

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值