使用JSON進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)交換傳輸詳細(xì)

使用JSON進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)交換傳輸詳細(xì)

ID:39574194

大?。?07.97 KB

頁數(shù):10頁

時(shí)間:2019-07-06

使用JSON進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)交換傳輸詳細(xì)_第1頁
使用JSON進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)交換傳輸詳細(xì)_第2頁
使用JSON進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)交換傳輸詳細(xì)_第3頁
使用JSON進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)交換傳輸詳細(xì)_第4頁
使用JSON進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)交換傳輸詳細(xì)_第5頁
資源描述:

《使用JSON進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)交換傳輸詳細(xì)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、使用JSON進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)交換-Android2011年05月11日星期三15:04在開發(fā)客戶端與服務(wù)端的應(yīng)用當(dāng)中,數(shù)據(jù)交換接口通常都是通過XML格式來進(jìn)行數(shù)據(jù)交換的。近年來,隨著AJAX技術(shù)的興起,JSON作為一種輕量級(jí)的數(shù)據(jù)交換格式,以其易于閱讀和編寫的優(yōu)點(diǎn),也越來越多的被使用到各個(gè)項(xiàng)目中。在OPhoneSDK中,也提供了JSON的類庫方便對(duì)JSON格式的數(shù)據(jù)進(jìn)行處理。本文將快速講解JSON格式,并通過代碼示例演示如何分別在客戶端和服務(wù)器端進(jìn)行JSON格式數(shù)據(jù)的處理。什么是JSON??????JSON(JavaScriptObjectNotation)是一種

2、輕量級(jí)的數(shù)據(jù)交換格式,易于閱讀和編寫,同時(shí)也易于機(jī)器解析和生成,非常適合于服務(wù)器與客戶端的交互。JSON采用與編程語言無關(guān)的文本格式,但是也使用了類C語言的習(xí)慣,這些特性使JSON成為理想的數(shù)據(jù)交換格式。和XML一樣,JSON也是基于純文本的數(shù)據(jù)格式。由于JSON天生是為JavaScript準(zhǔn)備的,因此,JSON的數(shù)據(jù)格式非常簡單,您可以用JSON傳輸一個(gè)簡單的String,Number,Boolean,也可以傳輸一個(gè)數(shù)組,或者一個(gè)復(fù)雜的Object對(duì)象。?????????String,Number和Boolean用JSON表示非常簡單。例如,用JSON表示一

3、個(gè)簡單的字符串“abc”,其格式為:"abc"。????除了字符",,/和一些控制符(b,f,,r,t)需要編碼外,其他Unicode字符可以直接輸出。下圖是一個(gè)String的完整表示結(jié)構(gòu):圖1.String的完整表示結(jié)構(gòu)??????一個(gè)Number可以根據(jù)整型或浮點(diǎn)數(shù)表示如下:??圖2.Number的表示結(jié)構(gòu)????????這與絕大多數(shù)編程語言的表示方法一致,例如:??12345(整數(shù))-3.9e10(浮點(diǎn)數(shù))??????Boolean類型表示為true或false。此外,JavaScript中的null被表示為null,注意,true、fal

4、se和null都沒有雙引號(hào),否則將被視為一個(gè)String。???????JSON還可以表示一個(gè)數(shù)組對(duì)象,使用[]包含所有元素,每個(gè)元素用逗號(hào)分隔,元素可以是任意的Value,例如,以下數(shù)組包含了一個(gè)String,Number,Boolean和一個(gè)null:?Object對(duì)象在JSON中是用{}包含一系列無序的Key-Value鍵值對(duì)表示的,實(shí)際上此處的Object相當(dāng)于Java中的Map,而不是Java的Class。注意Key只能用String表示。例如,一個(gè)Address對(duì)象包含如下Key-Value:city:Beijing?

5、street:ChaoyangRoad?postcode:100025(整數(shù))用JSON表示如下:{"city":"Beijing","street":"ChaoyangRoad","postcode":100025}??{"city":"Beijing","street":"ChaoyangRoad","postcode":100025}????其中Value也可以是另一個(gè)Object或者數(shù)組,因此,復(fù)雜的Object可以嵌套表示,例如,一個(gè)Person對(duì)象包含name和address對(duì)象,可以表示如下:?{"name":"Michael","address

6、":???{"city":"Beijing","street":"ChaoyangRoad","postcode":100025}??}?{"name":"Michael","address":??{"city":"Beijing","street":"ChaoyangRoad","postcode":100025}}?一個(gè)實(shí)際例子????接下來,我會(huì)通過一個(gè)例子來詳細(xì)說明OPhone客戶端程序如何訪問服務(wù)端的接口程序讀取用戶列表數(shù)據(jù),并在模擬器上顯示用戶列表數(shù)據(jù)。?1、服務(wù)端接口程序????首先,我們創(chuàng)建一個(gè)名為User的JavaBean作為用戶對(duì)象類,用來

7、保存演示數(shù)據(jù)。publicclassUser{???????privateintid;???????privateStringname;???????privateStringemail;???????privateStringgender;???????????????publicintgetId(){???????????????returnid;???????}???????publicvoidsetId(intid){???????????????this.id=id;???????}???????publicStringgetName(){?????

8、??????????returnnam

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。