本文目录一览:
- 1、使用json传输数据有什么优缺点
- 2、json是什么文件
- 3、java中处理JSON的开源工具都有些什么?那个比较好用
- 4、json数据之外还有什么数据?
- 5、json格式
- 6、json文件在实际开发中一般存放什么数据?
使用json传输数据有什么优缺点
JSON 作为一种更轻、更友好的 Web services客户端的格式(多采用浏览器的形式或访问 REST风格 Web服务的Ajax应用程序的形式)引起了 Web 服务供应商的注意。
JSON剖析:优点和不足
对于JSON,首先要明白JSON和XML一样也是一种简单文本格式。相对于XML,它更加易读、更便于肉眼检查。在语法的层面上,JSON与其他格式的区别是在于分隔数据的字符,JSON中的分隔符限于单引号、小括号、中括号、大括号、冒号和逗号
乍看上去,使用JSON的数据分隔符的优点可能并不那么明显,但存在一个根本性的缘由:它们简化了数据访问。使用这些数据分隔符时, JavaScript引擎对数据结构(如字符串、数组、对象)的内部表示恰好与这些符号相同。
这将开创一条比DOM技术更为便捷的数据访问途径。下面列举几个JavaScript代码片段来说明这一过程,这些代码片段会访问先前的JSON代码片段中的信息:
访问JSON中的名称: addressbook.name
访问JSON中的地址: addressbook.address.street
访问JSON中的电话号码第一位:addressbook.address.phoneNumbers[0]
如果您具备DOM编程经验,就能很快地看出区别;新手可以参看 Document Object Model 的这一外部资源,这里提供了关于数据导航的实例。
JSON的另一个优点是它的非冗长性。在XML中,打开和关闭标记是必需的,这样才能满足标记的依从性;而在JSON中,所有这些要求只需通过一个简单的括号即可满足。在包含有数以百计字段的数据交换中,传统的XML标记将会延长数据交换时间。目前还没有正式的研究表明JSON比XML有更高的线上传输效率;人们只是通过简单的字节数比较发现,对于等效的JSON和XML有效负载,前者总是小于后者。至于它们之间的差距有多大,特别是在新的XML压缩格式下它们的差距有多大,有待进一步的研究。
此外,JSON受到了擅长不同编程语言的开发人员的青睐。这是因为无论在Haskell中或 Lisp中,还是在更为主流的C#和PHP中,开发都可以方便地生成JSON(详见 参考资料)。
不足
和许多好东西都具有两面性一样,JSON的非冗长性也不例外,为此JSON丢失了XML具有的一些特性。命名空间允许不同上下文中的相同的信息段彼此混合,然而,显然在JSON中已经找不到了命名空间。JSON与XML的另一个差别是属性的差异,由于JSON采用冒号赋值,这将导致当XML转化为JSON时,在标识符(XML CDATA)与实际属性值之间很难区分谁应该被当作文本考虑。
另外,JSON片段的创建和验证过程比一般的XML稍显复杂。从这一点来看,XML在开发工具方面领先于JSON。尽管如此,为了消除您对这一领域可能存在的困惑,
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成为理想的数据交换语言。
JSON建构于两种结构,一是“名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。
二是值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)。
扩展资料:
JSON简要历史
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。
JSON是Douglas Crockford在2001年开始推广使用的数据格式,在2005年-2006年正式成为主流的数据格式,雅虎和谷歌就在那时候开始广泛地使用JSON格式。
参考资料来源:百度百科—json
java中处理JSON的开源工具都有些什么?那个比较好用
我用过的有jackson,谷歌的gson,阿里的fastjson
fastjson在遍历JSONObject的时候顺序不是有序的,想要有序还得改源码,比较麻烦,序列化对象时属性的顺序也不能保证,是我放弃使用的主要原因
gson是用起来是最痛快的,一句话就能解决
String string = new Gson().toJson(user);
User user = new Gson().fromeJson(string, User.class);
特点是不报错,如果输入的json字符串和Java Bean的属性对应不上,相应属性会为null或默认值
这是优点还是缺点就见仁见智了,至少我在转换一些不太规则的API返回值时还是挺方便的。
json数据之外还有什么数据?
json只是数据的表达格式,跟他同一个层次的另外一种表达方式XML
你问的是一个网络通信问题,你可以去学学网络七层协议
ajax是网页开发技术,你可以学一点http的知识
json格式
json格式:
1、数组字面量
数组字面量,是用一对方括号括起一组用逗号隔开的 javascript 值,例如:
var aNames=["hello", 12, true , null];
2、 对象字面量
对象字面量,是通过两个花括号来定义的。在花括号内可以放置任意数量的“名称-值”对,定义格 式字符串值”。除了最后一行外,每个“名称-值”对后必须有一个逗号(这与Perl 中的联合数组的定义有些类似)。例如:
var oCar = {
"color": "red",
"doors" : 4,
"paidFor" : true
};
3、 混合字面量
可以混用对象和数组字面量,来创建一个对象数组,或一个包含数组的对象。例如:
{comments:[
{
id:1,
author:"someone1",
url:"",
content:"hello"
},
{
id:2,
author:"someone2",
url:"",
content:"hello"
},
{
id:3,
author:"someone3",
url:"",
content:"hello"
}
]};
4、JSON 语法
在Ajax应用中,就是服务器直接生成javascript语句,客户端获取后直接用eval方法来获得这个对象,这样就可以省去解析XML的性能损失。 同时,在javascript 通信中使用JSON作为数据格式的好处很名下,可以立即获得数据的值,因此可以更快的访问其中包含的数据。
var oCarInfo = eval("(" + sJSON + ")");
请记住:在javascript中花括号也是一个语句。要让解析器知道这个花括号表示的是一个对象而非一个语句的唯一方法是能否找到封装它的圆括号 (是用来说明代码是一个表达式而非一个语句)。
json文件在实际开发中一般存放什么数据?
希望下面的内容能给你带来参考:
JSON是轻量级的文本数据存储和交换格式。类似XML。
JSON的两种结构:对象(Map)和数组(Array)
对象是键值对形式的Map,键和值之间用“ : ”隔开,两个Map之间用“, ”隔开,多个Map被包括在大括号{ }之间形成JSON对象。
数组结构被包括在中括号[ ]之间,其中包括0或多个以” , ”分隔的Map对象。
JSON数据示例:
①简单json对象
一个json对象,对象包括2个属性,name和age。
②简单json数组
一个json数组,数组里面包括2个对象,每个对象包括2个属性。
③稍微复杂
一个json对象,包括2个属性,data和result,而result对应的是一个json数组,该数组里面包含两个json对象。
④再复杂点点
一个json对象,包含3个json数组,其中数组programmers和authors包含各一个json对象,而musicians包含两个json对象。