关于Json字符串转换

一、 总结

JSON对象是一个无序的"名称/值"对的集合
它开始于“{”,结束于“}”。每一个属性名和值间用“:”提示,属性间用“,”分隔。一个数组开始于"[",结束于"]",值之间用","分隔。

数组和List转换为JSON用JSONArray.fromObject
Map、bean、beans(保存在一个List中转换)转换为JSON用 JSONObject.fromObject
JSONObject.toBean(JSONObject类型,Class类型)  // 转换为对象(如自定义类对象,Map对象等)

 

 

JSON (JavaScript Object Notation)是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互.
JSON 是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具包。

Json必需的包(重新导入包后需重启下,因为这个问题浪费了我好长时间 ,需注意)
commons-beanutils.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

Java代码   收藏代码
  1. <script language="javascript">  
  2.   
  3.  function showJSON() {     
  4.      var user =      
  5.      {      
  6.          "username":"andy",     
  7.          "age":20,     
  8.          "info": { "tel": "123456", "cellphone": "98765"},     
  9.          "address":     
  10.              [     
  11.                  {"city":"beijing","postcode":"222333"},     
  12.                  {"city":"newyork","postcode":"555666"}     
  13.              ]     
  14.      }             
  15.      alert(user.username);     
  16.      alert(user.age);     
  17.      alert(user.info.cellphone);   
  18. //或       user.info["cellphone"]    
  19.      alert(user.address[0].city);     
  20.      alert(user.address[0].postcode);     
  21.  }   
  22. </script>  

 这表示一个user对象,拥有username, age, info, address 等属性。
同样也可以用JSON来简单的修改数据,修改上面的例子
js 代码

Java代码   收藏代码
  1. function showJSON() {     
  2.     var user =      
  3.     {      
  4.         "username":"andy",     
  5.         "age":20,     
  6.         "info": { "tel": "123456", "cellphone": "98765"},     
  7.         "address":     
  8.             [     
  9.                 {"city":"beijing","postcode":"222333"},     
  10.                 {"city":"newyork","postcode":"555666"}     
  11.             ]     
  12.     }             
  13.     user.username = "Tom";     
  14.     alert(user.username);     
  15. }   

易错地方 (注意有无外引号):

Java代码   收藏代码
  1.     function testJson(){  
  2.            
  3.          var str = { "name": "Violet", "password": "character" };   //JSON类型对象  
  4. //无引号,是JSON对象  
  5.          alert(typeof(str));  //JSON类型  
  6.          alert(str.password);   
  7.   
  8.          //alert(obj.toJSONString());    
  9.            
  10.           var a=50,b="xxx";  
  11.           var arr="{id:"+a+",name:'"+b+"'}"; //string类型  
  12.               //字符串拼接为可转换为JSON的String   
  13.     
  14.           var str2 = '{ "name": "Violet", "password": "character" }';       
  15. //有引号,是String类型对象          
  16.           alert(typeof(str2)); //string类型  
  17.           var obj = eval('(' + str2 + ')');  //转换为JSON类型  
  18.           alert(typeof(obj)); //JSON类型  
  19.           alert(obj.name);  //Violet  
  20.     }  
  21.     </script>  

你可能感兴趣的:(json)