json的好处-新一代数据传输利器

Json其实和XML一样,作为数据中间传送对象,本身是一个文本。不过这个文本有自己的结构。(是不是可以联想到C语言的数据结构)。

因为是文本所以各种语言都能兼容,包含JS这种轻量级的客户端脚本。

为什么不XML

XML的冗余太大,不过XML阅读起来比较方面,所以并没有被json完全取代,很多时候都是并存。比如sina微博的开发平台有一个JSON版本和一个XML版本。以前是,现在没看。

比如xml

    <Book>
      <name>name</name>
      <author>
        <name>authorname</name>
        <age>23</age>
      </author>
      <year>2010</year>
    </Book>  

JSON

{"name":"name","author":{"name":"authorname","age":23},"year":2010}

JSON的好处,你可以把XML的好处都拿来,然后加上一条,我比XML小。

不过明显的不少软件支持XML导出,却不支持JSON导出。比如Excel。

JSON 和 XML 优缺点的比较

1.在可读性方面,JSON和XML的数据可读性基本相同。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)了。

6.JSON和XML同样拥有丰富的解析手段。

7.JSON相对于XML来讲,数据的体积小。

8.JSON与JavaScript的交互更加方便。

9JSON对数据的描述性比XML较差。

10.JSON的速度要远远快于XML。

总的来说,JSON就是小,对于追求高效的互联网,速度是一切。

source:http://java-er.com/blog/json-xml/

时间: 2024-11-05 13:38:25

json的好处-新一代数据传输利器的相关文章

SSM框架用JSON进行前后端数据传输

一个根据用户id查找用户信息的简单功能,使用JSON进行数据的传输 前端代码 这里用bootstrap做简单的样式美化,中间留了个div用来异步的显示查询结果,ajax进行前端的数据传输(class内容可以无视,只有美化效果): <form class="form-horizontal" > <label for="firstname" class="col-sm-2 control-label">用户ID</lab

数据量越发庞大怎么办?新一代数据处理利器Greenplum来助攻

作者:李树桓 个推数据研发工程师 前言:近年来,互联网的快速发展积累了海量大数据,而在这些大数据的处理上,不同技术栈所具备的性能也有所不同,如何快速有效地处理这些庞大的数据仓,成为很多运营者为之苦恼的问题!随着Greenplum的异军突起,以往大数据仓库所面临的很多问题都得到了有效解决,Greenplum也成为新一代海量数据处理典型代表.本文结合个推数据研发工程师李树桓在大数据领域的实践,对处理庞大的数据量时,如何选择有效的技术栈做了深入研究,探索出Greenplum是当前处理大数据仓较为高效稳

如何使用json在前后台进行数据传输

上一篇博客写到用javascript生成多组文本,可以让数据的输入不受显示,现在我们需要把这些输入写入数据库,这里就用到json传入. 首先,我们来写一下后台如何生成要传输的数据 function generateDtb() { //写入 var txtName = document.getElementById("txtName").value; //创建数组 var dtb = new Array(); //通过循环把数据写入到数组并返回 for (var i = 0; i <

XML在数据传输哪些方面会比JSON有优势,在哪些领域更加适合?

这个问题如今是个政治问题,说什么都会有人反对.我只能说个人看法,那就是:如果谈数据传输,XML 相对 JSON 没有任何优势,从一开始就是如此. 很多当下的 XML 支持者可能都忘了,XML 一开始不是为网络传输设计的,而是为了替代 HTML.所以它才会如此强调结构化(相对 HTML 4 的混乱结构而言容易分析)和格式中内建编码信息(便于跨国数据交换).但是 XML 诞生后在这方面一直不温不火,也就在 XHTML 中略有建树.其它的应用虽然也有,比如 MathXML.XSLT 之类,也都不算被广

Introduction to Json

什么是Json 是Javascript·对象的一种表示,属于轻量级数据,它比XMl小,快,易解析 作用: 用于存储和交换(转换)信息的语言,还可以将各种数据类型放在json中并进行数据传输 整理的章节图 讲解 json架构两种表示 对象 {key:value} 数组["value1","value2",...] 下面咱们就做个小的实例来看看 Json对象,它的表示和js中的对象字面量几乎是同一种表示.下面的就是一个对象(数组) 这个 employee 对象是包含 3

JQuery + JSON作为前后台数据交换格式实践

JQuery + JSON作为前后台数据交换 JQuery提供良好的异步加载接口AJAX,可以局部更新页面数据, http://api.jquery.com/category/ajax/ JSON作为一种轻量数据格式,被浏览器js引擎普遍支持,同xml格式. 使用AJAX+JSON数据格式来实现动态页面,有以下好处: 1. 松耦合, 页面HTML和数据彻底分离, 即表示层 和 数据层分开, 有利前台样式定制. 不同于以往后台脚本嵌套HTML标签,并输出数据到标签的合适位置, 来实现动态页面,表示

json为txt文本加密

我们知道json是一种数据传输的加密格式 这里为txt格式的文本加密(纯属无聊) 写的比较凌乱,查找你输入的两个文件夹下面的所有txt文件(包含下一级文件): 运行时要注意,别把重要文件给加密了 1 import os.path, time 2 import json 3 import glob 4 import os 5 import time 6 7 8 def wenjian(): #查找每个文件夹下面的文件 9 wen=[] 10 11 for i in rootdir: 12 13 f

【cocos2d-js官方文档】二十二、project.json

概述 项目相关配置,由原来的cocos2d.js中转移到project.json中,该文件需要与index.html同级,一般建议放在根目录下. 由原来的cocos2d.js改为project.json的好处如下: 原来的cocos2d.js中参杂了一些逻辑代码,无法很好体现其就是作为项目的配置文件. 用json格式作为配置文件会更友好.也可以使得cocos-console.cocos-utils,甚至是用户自定义脚本工具能够使用同一个配置文件. 字段说明 debugMode 相当于原来的COC

JavaScript对象与JSON字符串互相转换详解

JSON是目前互联网数据传输所采用的的主要格式,很多编程语言都有针对JSON的解析器和序列化器,在web前台领域,js对象与JSON字符串的互相转换需求也较为常见. 此文主要讲解js对象和JSON字符串互相转换的方法和一些细节 首先如果需要在开发中使用JSON传输及相应转换需要在html中引入json.js或者json2.js,下载地址:https://github.com/douglascrockford/JSON-js 1.js对象转JSON字符串(序列化) var jsonText = J