JSON与JAVA的数据转换

本文介绍如何使用JSON-lib这个Java类包实现Java的数据转换。通过此类包可以把bean,map和XML转换成JSON并能够把JSON转回成bean和DynaBean。

 

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

下载地址:

 

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

 

还要需要的第3方包:
org.apache.commons

包括:

commons-beanutils.jar
commons-collections-3.2.jar
commons-lang-2.6.jar
commons-logging-1.1.1.jar

 

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

 

1. 对List类型的解析:

 

boolean[] boolArray = new boolean[]{true,false,true};        
		JSONArray jsonArray1 = JSONArray.fromObject( boolArray );       
		System.out.println( jsonArray1 );       
		 // prints [true,false,true]      
		    
		 List list = new ArrayList();       
		 list.add( "first" );       
		 list.add( "second" );       
		 JSONArray jsonArray2 = JSONArray.fromObject( list );       
		 System.out.println( jsonArray2 );       
		 // prints ["first","second"]   
		 
		 JSONArray jsonArray3 = JSONArray.fromObject( "['json','is','easy']" );        
		 System.out.println( jsonArray3 );        
		 // prints ["json","is","easy"]

  

2. 对Map类型的解析

 

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(json); 
// {"arr":["a","b"],"int":1,"name":"json","func":function(i){ return this.arr[i]; },"bool":true}

 

3、对JavaBEAN的解析

 

import net.sf.json.*;

public class Test {
	
	public static class JsonBean{
		private String name="json";
		private int pojoId = 1;
		public String getName() {
			return name;
		}
		public void setName(String name) {
			this.name = name;
		}
		public int getPojoId() {
			return pojoId;
		}
		public void setPojoId(int pojoId) {
			this.pojoId = pojoId;
		}
		
		
	}

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		JSONObject jsonObject = JSONObject.fromObject(new JsonBean());
		System.out.println(jsonObject); 
		// {"name":"json","pojoId":1}

	}

}

 说明apache json-lib可以满足各种json的解析。

你可能感兴趣的:(java)