JAVA中使用JSONObject对象

来源:互联网 发布:淘宝win10激活码木马 编辑:程序博客网 时间:2024/05/21 09:23

JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互。

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代码

Java代码 
List list = new ArrayList(); 
 
list.add( "first" ); 
 
list.add( "second" ); 
 
JSONArray jsonArray2 = JSONArray.fromObject( list ); 


2. Map集合转换成json代码

Java代码 
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; }"); 
 
JSONObject json = JSONObject.fromObject(map); 


3. Bean转换成json代码

Java代码 
JSONObject jsonObject = JSONObject.fromObject(new JsonBean()); 

4. 数组转换成json代码

Java代码 
boolean[] boolArray = new boolean[] { true, false, true }; 
 
JSONArray jsonArray1 = JSONArray.fromObject(boolArray); 


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

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

6. beans转换成json代码

Java代码 
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);

7.JSONObject 与 XML转换

JSONObject to XML

例子:
JSONObject json = JSONObject.fromObject("{\"name\":\"json\",\"bool\":true,\"int\":1}");
XMLSerializer xmlSerializer = new XMLSerializer();
String xml = xmlSerializer.write(json);
System.out.println(xml);

XML to JSONObject
例子:
String xmls = "<?xml version='1.0' encoding='UTF-8'?><o><int type='number'>1</int>"
+ "<name type='string'>json</name></o>";  

XMLSerializer xmlSerializer = new XMLSerializer();
JSON json = xmlSerializer.read(xmls); System.out.println( json.toString(2) );



0 0
原创粉丝点击