java对象与json对象的转换

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

转:JSON与JAVA数据的转换

JSON-lib这个Java类包用于把bean,map和XML转换成JSON并能够把JSON转回成bea n和DynaBean。

下载地址:/

还要需要的第3方包:

mons(3.2以上版本)

org.apache.oro

net.sf.ezmorph(ezmorph-1.0.4.jar)

nu.xom

1、List

Java代码

1.boolean[] boolArray = newboolean[]{true,false,true};

2.JSONArray jsonArray1 = JSONArray.fromObject( boolArray );

3.System.out.println( jsonArray1 );

4.// prints [true,false,true]

5.

6.List list = new ArrayList();

7.list.add( "first");

8.list.add( "second");

9.JSONArray jsonArray2 = JSONArray.fromObject( list );

10.System.out.println( jsonArray2 );

11.// prints ["first","second"]

12.

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

14.System.out.println( jsonArray3 );

15.// prints ["json","is","easy"]

2、Map

Java代码

1.Map map = new HashMap();

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

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

4.

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

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

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

8.JSONObjectjson = JSONObject.fromObject( map );

9.System.out.println( json );

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

json","bool":true}

3、BEAN

Java代码

1./**

2.* Bean.java

3.private String name = "json";

4.private intpojoId = 1;

5.private char[] options = new char[]{'a','f'};

6.private String func1 = "function(i){ return this.options[i]; }";

7.private JSONFunction func2 = new JSONFunction(new String[]{"i"},"retu

rn this.options[i];");

8.*/

9.JSONObjectjsonObject = JSONObject.fromObject( new JsonBean() );

10.System.out.println( jsonObject );

11.//{"func1":function(i){ return this.options[i]; },"pojoId":1,"name":"json",

"options":["a","f"],"func2":function(i){ return this.options[i]; }}

4、BEANS

Java代码

1./**

2.* private int row ;

3.private int col ;

4.private String value ;

5.*

6.*/

7.List list = new ArrayList();

8.JsonBean2 jb1 = new JsonBean2();

9.jb1.setCol(1);

10.jb1.setRow(1);

11.jb1.setValue("xx");

12.

13.JsonBean2 jb2 = new JsonBean2();

14.jb2.setCol(2);

15.jb2.setRow(2);

16.jb2.setValue("");

17.

18.

19.list.add(jb1);

20.list.add(jb2);

21.

22.JSONArrayja = JSONArray.fromObject(list);

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

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

5、String to bean

Java代码

1.String json = "{name=\"json\",bool:true,int:1,double:

2.2,func:function(a)

{ return a; },array:[1,2]}";

2.JSONObjectjsonObject = JSONObject.fromString(json);

3.Object bean = JSONObject.toBean( jsonObject );

4.assertEquals( jsonObject.get( "name"), PropertyUtils.getProperty( bean,

"name") );

5.assertEquals( jsonObject.get( "bool"), PropertyUtils.getProperty( bean, "

bool") );

6.assertEquals( jsonObject.get( "int"), PropertyUtils.getProperty( bean, "i

nt") );

7.assertEquals( jsonObject.get( "double"), PropertyUtils.getProperty( bean,

"double") );

8.assertEquals( jsonObject.get( "func"), PropertyUtils.getProperty( bean, "

func") );

9.List expected = JSONArray.toList( jsonObject.getJSONArray( "array") );

相关文档
最新文档