JavaEE 第七周

JSON学习笔记

一. 什么是JSON

      基于JavaScript语言的轻量级的数据交换格式(JavaScript Object Notiation); JSON采用完全独立于语言的文本格式。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。

二. JSON与XML的对比(引用自:sanpintian的CSDN博客)

      1)可读性:JSON和XML的可读性可谓不相上下,一边是建议的语法,一边是规范的标签形式,很难分出胜负。

  2)可扩展性:XML天生有很好的扩展性,JSON当然也有,没有什么是XML能扩展,JSON不能的。

      3)编码难度:XML有丰富的编码工具,比如Dom4j、JDom等,JSON也有json.org提供的工具,但是JSON的编码明显比XML容易许多,即使不借助工具也能写出JSON的代码,可是要写好XML就不太容易了。

      4)解码难度:XML的解析得考虑子节点父节点,让人头昏眼花,而JSON的解析难度几乎为0。这一点XML输的真是没话说。

      5)流行度:XML已经被业界广泛的使用,而JSON才刚刚开始,但是在Ajax这个特定的领域,未来的发展一定是XML让位于JSON。到时Ajax应该变成Ajaj(Asynchronous Javascript and JSON)了。
 
三. JSON格式
      JSON:是一个JavaScript语言的一个子集,所以可以使用JavaScript来解析json数据。
      基本语法:
       {} :表示的是一个对象,结构为:{key:value,key:value,...}键值对;key必须是String类型,value可以使任意数据类型;
       [] :表示的是数组,表示"[]"括起来的内容,是有序的,结构为[value,value...]的单值结构;
      “” :表示普通的字符串;
      : :用于属性名和属性值的表示,如:name:“张三”;
      :用于分割不同的元素(属性或者方法);

四. JSON的构建

      JSON建构于两种结构: 

  1)“名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),记录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。

  2)值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)。这些都是常见的数据结构。事实上大部分现代计算机语言都以某种形式支持它们。这使得一种数据格式在同样基于这些结构的编程语言之间交换成为可能。

五. 导包

   使用JSON需要导入以下包:
  commons-beanutils.jar
  commons-logging.jar
  commons-lang.jar
  commons-collection.jar
  ezmorph.jar
  json-lib.jar
 
六. 实现
       详见https://blog.csdn.net/z354681250/article/details/50589963
 
摘自:http://www.cnblogs.com/sharpxiajun/archive/2011/10/29/2228290.html
         https://blog.csdn.net/css1223mjf/article/details/52481274

猜你喜欢

转载自www.cnblogs.com/Z--Y/p/8915608.html