基于java操作的JSON入门教程.pdf
文本预览下载声明
基于java 操作的JSON 入门教程
尽管有许多宣传关于 XML 如何拥有跨平台,跨语言的优势,然而,除非应用于 Web
Services,否则,在普通的 Web 应用中,开发者经常为 XML 的解析伤透了脑筋,无论是服
务器端生成或处理 XML,还是客户端用 JavaScript 解析 XML,都常常导致复杂的代码,极
低的开发效率。实际上,对于大多数 Web 应用来说,他们根本不需要复杂的 XML 来传输
数据,XML 的扩展性很少具有优势,许多 AJAX 应用甚至直接返回 HTML 片段来构建动态
Web 页面。和返回 XML 并解析它相比,返回 HTML 片段大大降低了系统的复杂性,但同
时缺少了一定的灵活性。
现在,JSON 为 Web 应用开发者提供了另一种数据交换格式。让我们来看看 JSON 到
底是什么,同 XML 或 HTML 片段相比,JSON 提供了更好的简单性和灵活性。
JSON 数据格式解析
和 XML 一样,JSON 也是基于纯文本的数据格式。由于 JSON 天生是为 JavaScript 准
备的,因此,JSON 的数据格式非常简单,您可以用 JSON 传输一个简单的 String,Number,
Boolean,也可以传输一个数组,或者一个复杂的 Object 对象。
String,Number 和 Boolean 用 JSON 表示非常简单。例如,用 JSON 表示一个简单的
String “abc ”,其格式为:abc
除了字符 ,,/ 和一些控制符(b,f ,n,r,t )需要编码外,其他 Unicode 字符可以
直接输出。
一个 Number 可以根据整型或浮点数表示如下:
这与绝大多数编程语言的表示方法一致,例如:
12345 (整数)
-3.9e10 (浮点数)
Boolean 类型表示为 true 或 false 。此外,JavaScript 中的 null 被表示为 null,注意,
true 、false 和 null 都没有双引号,否则将被视为一个 String 。
JSON 还可以表示一个数组对象,使用 [] 包含所有元素,每个元素用逗号分隔,元素
可以是任意的 Value ,例如,以下数组包含了一个 String,Number,Boolean 和一个 null:
[abc,12345,false,null]
Object 对象在 JSON 中是用 {} 包含一系列无序的 Key-Value 键值对表示的,实际上此
处的 Object 相当于 Java 中的 MapString, Object,而不是 Java 的 Class 。注意 Key 只
能用 String 表示。
例如,一个 Address 对象包含如下 Key-Value :
city:Beijing
street:Chaoyang Road
postcode:100025 (整数)
用 JSON 表示如下:
{city:Beijing,street: Chaoyang Road ,postcode:100025}
其中 Value 也可以是另一个 Object 或者数组,因此,复杂的 Object 可以嵌套表示,
例如,一个 Person 对象包含 name 和 address 对象,可以表示如下:
{name:Michael,address:
{city:Beijing,street: Chaoyang Road ,postcode:100025}
}
JavaScript 处理 JSON 数据
上面介绍了如何用 JSON 表示数据,接下来,我们还要解决如何在服务器端生成 JSON
显示全部