JSON 教程

阅读: 119

任何开发语言编写的(Java/EE,Ruby,PHP,C#/.Net等等),你都可以使用JSON来通过网络进行数据交互和处理。几乎所有的编程语言都有很好的库或第三方工具来提供基于JSON的API支持,因此你可以非常方便地使用任何自己喜欢的编程语言来处理JSON数据。而另一方面随着REST、像MongoDB这样的NoSQL技术或标准的广泛使用,JSON也正成为一种被推荐的数据交互格式。

1. JSON简介

JSON:JavaScript 对象表示法(JavaScript Object Notation)。

JSON是在2001年,由Douglas Crockford创建的,并且被IETF(Internet Engineering Task Force)定义为RFC 4627标准。

任何开发语言编写的(Java/EE,Ruby,PHP,C#/.Net等等),你都可以使用JSON来通过网络进行数据交互和处理。几乎所有的编程语言都有很好的库或第三方工具来提供基于JSON的API支持,因此你可以非常方便地使用任何自己喜欢的编程语言来处理JSON数据。而另一方面随着REST、像MongoDB这样的NoSQL技术或标准的广泛使用,JSON也正成为一种被推荐的数据交互格式。

2. 为什么使用JSON?

JSON被认为是XML的很好替代者。因为JSON的可读性非常好,而且它没有像XML那样包含很多冗余的元素标签,这使得应用在使用JSON进行网络传输以及进行解析处理的速度更快,效率更高。在分布式系统中,数据交换格式,之前是使用XML,比如webservice。在现在分布式系统或者微服务架构中,一般都是使用json做为数据交换格式,比如dubbo、spring Cloud等。

3. JSON 的特点

  • JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation)。
  • JSON 是轻量级的文本数据交换格式。
  • JSON 独立于语言。
  • JSON 具有自我描述性,更易理解。

JSON 使用 JavaScript 语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。

4. JSON是什么?

JSON是一种简单数据格式,它有三种数据结构:

  • 键值对 —— Name/Value (Key/Value)
  • 对象 —— Object
  • 数组 —— Arrays

一个有效的JSON文档需要被包含在一对花括号内,比如下面定义的courses 对象是包含 3 个课程的数组:

{
	"courses": [{
			"title": "深入理解并发编程",
			"price": "0.00"
		},
		{
			"title": "MySQL教程",
			"price": "0.00"
		},
		{
			"title": "架构师教程",
			"price": "0.00"
		}
	]
}

请注意,有些开发社区或线上文档直接将上面的JSON文档称为JSON字符串,这两者的意思是一样的。

 


© 版权归知否网(zhifou.net)所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权知否网将依法追究其法律责任。

读后有收获,请作者喝杯咖啡


精彩留言

发表评论