一、Json介绍
JSON(JavaScript Object Notation)
是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。
名称/对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 associative array)。
二、Json格式
值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array
对象是一个无序的“‘名称/集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个名称后跟一个“:”(冒号);“‘名称/之间使用“,”(逗号)分隔。
Json=[{username : aa, password : aa},{ username : bb, password : bb}]
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。
 
值(value)可以是双引号括起来的字符串(string)、数值(number)truefalse null、对象(object)或者数组(array)。这些结构可以嵌套。
 
三、JSON
Javastring<=>java.lang.String, java.lang.Character,
charnumber<=>java.lang.Number, byte, short, int, long, float,

double true|false<=>java.lang.Boolean,boolean
null<=>null
function<=>net.sf.json.JSONFunction
array<=>net.sf.json.JSONArray (object, string, number, boolean, function)object<=>net.sf.json.JSONObject

 

代码实例:

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

 

 

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

 

 

class MyBean{   
   private String name = "json";   
   private int pojoId = 1;   
   private char[] options = new char[]{'a','f'};   
   private String func1 = "function(i){ return this.options[i]; }";   
   private JSONFunction func2 = new JSONFunction(new String[]{"i"},"return this.options[i];");   
  
   // getters & setters   
   ...   
}   
  
JSONObject jsonObject = JSONObject.fromObject( new MyBean() );   
System.out.println( jsonObject );   
/* prints  
  {"name":"json","pojoId":1,"options":["a","f"],  
  "func1":function(i){ return this.options[i];},  
  "func2":function(i){ return this.options[i];}}  

 

四、 JSON 用法和所需的类 .
(1)
所需依赖的类文件

所需依赖的类文件
Json-lib requires (at least) the following dependencies in your classpath:
jakarta commons-lang 2.3               //appach网站下载最新的
jakarta commons-beanutils <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />1.7.0     //appach网站下载最新的
jakarta commons-collections 3.2     //appach网站下载最新的
jakarta commons-logging 1.1          //appach网站下载最新的