JSON

1、什么是JSON

  JSON(JavaScript Object Notation)是一种轻量级的数据交换格式

  易于人阅读和编写,同时也易于机器解析和生成。

  JSON完全独立于语言之外,但语法上借鉴了JavaScript

2、轻量级的解决方案

  轻量级:相对于XML,JSON解析速度更快,文档更小。

<emp>
    <name>Sally</name>
    <city>北京</city>
    <age>25</age>
</emp>

{"name":"Sally","city":"北京","age":25}

3、 JSON的结构  

  JSON主要分两种结构:

    "名称/值"对的集合。不同的语言理解为对象、记录、结构、字典、哈希表等

    值的有序列表。大部分语言中理解为数组

4、使用JSON表示一个对象

  {属性名:属性值,属性名:属性值...}

  注意:

    属性值可以是string,number,boolean(true,false),null,object。

    属性名

    属性名必须使用双引号引起来

    属性值如果是字符串,必须使用双引号括起来

5、使用JSON表示一个数组

  JSON表示数组的语法是:[value,value,value]
  Value可以是简单的数据,也可以是Object、数组类型,例如

  数组[
        {"name":"Jerry","age":22},
        {"name":"Tom","age":32}
        ]
    对象{
        "name":"Jerry",
        "hobby":["sing","dance","eat"]
        }

6、Java字符串--》Javascript对象 

  使用JavaScript语言的原生函数:eval()
  但该方法有风险,使用需谨慎

    var str='{"name":"张三","age":24}';
    var obj=eval("("+str+")");
    alert(obj.name); 

  使用原生对象JSON提供的parse()方法
  如果该对象无效,说明浏览器版本太低

    var  str='{"name":"王小贱","age":24}';
    var obj=JSON.parse(str);
    alert(obj.name);

  使用JSON.js文件为字符串增加的方法

    var str='{"name":"王小贱","age":24}';
    var obj=str.parseJSON();
    alert(obj.name);    

7、Java对象转换成JSON

  引入必要的jar文件
    commons-beanutils.jar
    commons-collections.jar
    common-lang.jar
    common-logging.jar
    ezmorph.jar
    json-lib.jar

8、Java对象转换成JSON

  利用JSON官方提供的API:JSONObject,JSONArray提供的方法。

    Employee emp=new Employee("1","王小贱","");
    JSONObject obj=JSONObject.fromObject(emp);
    String jsonStr=obj.tostring()

 

你可能感兴趣的:(json)