国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

JSON在電子政務信息系統(tǒng)數(shù)據(jù)交換中的研究與應用

2012-04-29 00:44:03姜宇
科技創(chuàng)新導報 2012年15期
關(guān)鍵詞:電子政務瀏覽器代碼

姜宇

摘 要:作為當今主流的Web開發(fā)技術(shù),AJAX在電子政務信息系統(tǒng)中的廣泛應用,對于提高用戶體驗和政府辦公效率有其獨特的優(yōu)勢。但其中基于XML進行的數(shù)據(jù)傳輸,由于需要DOM解析,導致占用系統(tǒng)資源較多,對于瀏覽器來說會導致文件解析資源消耗嚴重的問題。本文提出使用輕量級的JSON格式作為數(shù)據(jù)負載,摒棄了DOM對XML文件解析的復雜性,可大幅提高數(shù)據(jù)交換的速率和頁面呈現(xiàn)的實時性。

關(guān)鍵詞:AJAXJSONXML

中圖分類號:TM6 文獻標識碼:A 文章編號:1674-098X(2012)05(c)-0036-01

1 引言

隨著計算機技術(shù)和互聯(lián)網(wǎng)技術(shù)的迅猛發(fā)展,社會信息化程度的高低已經(jīng)成為衡量一個國家綜合國力水平的重要標志之一。而政府機關(guān)為適應網(wǎng)絡信息社會的要求,更好地為國民經(jīng)濟和社會發(fā)展服務,更需要加強各部門之間信息資源的共享,實現(xiàn)聯(lián)合辦公,提高行政效率,降低行政成本,加速信息的傳播,提高信息的使用價值[1]。這樣對電子政務信息系統(tǒng)中數(shù)據(jù)的傳輸效率提出了新的要求。

本文對XML和JSON進行了分析比較,提出了在AJAX環(huán)境中基于JSON的輕量級數(shù)據(jù)交換模式,對于提高政府部門辦公效率有著重要的意義。

2 AJAX簡介

AJAX是異步JS和XML的簡稱,是一種是用客戶端腳本并能與Web服務器交互的客戶端Web開發(fā)技術(shù)。其特點在于AJAX是基于客戶端的,并能夠以異步的方式與服務器交互。

3 從XML到JSON

3.1 XML的局限性

XML——可擴展標記語言。它是一種格

式統(tǒng)一,跨平臺的語言。在數(shù)據(jù)傳送過程中,XML始終保留了諸如父/子關(guān)系這樣的數(shù)據(jù)結(jié)構(gòu)。幾個應用程序可以共享和解析同一個XML文件,不必使用傳統(tǒng)的字符串解析或拆解過程[2]。因此在傳統(tǒng)WEB應用程序中,使用XML已經(jīng)有效地成為客戶端與服務器之間數(shù)據(jù)交換的負載格式。隨著WEB2.0的發(fā)展,AJAX技術(shù)逐漸興起,在其構(gòu)建的WEB程序中,XML的應用具有很大的局限性。

由于AJAX在瀏覽器與WEB服務器之間使用異步數(shù)據(jù)傳輸HTTP請求以達到使網(wǎng)頁從服務器請求少量的信息,在不重載整個頁面的情況下與WEB服務器交換數(shù)據(jù),因此AJAX程序中的更新和導航序列是在客戶端/服務器環(huán)境之外完成的。信息被瀏覽器接收到后,需要整合到HTML頁面的整體布局中,這個局部刷新過程不易消耗時間過久,否則會導致用戶體驗下降。盡管腳本語言和插件支持已使大多數(shù)主流瀏覽器的功能得到了強化,但許多編程任務依然難于開展[3],這是因為將XML作為信息交換的載體,處理操縱文本時通常是使用DOM來實現(xiàn)的。

在客戶端接收從服務器傳輸過來的信息代碼時,首先需要對服務器代碼進行解析。如果服務器代碼是用XML編碼的,就必須調(diào)用XML解析器,通常使用DOM解析內(nèi)容。使用DOM時,將把所有的XML文檔信息都存于內(nèi)存中。在信息量不是很大的時候,使用XML作為信息載體并無不妥。但隨著信息量的增多,DOM對XML的解析會出現(xiàn)明顯的復雜性,主要源于其基于函數(shù)的根,這使得對數(shù)據(jù)樹的簡單訪問和修改都需要進行無數(shù)次的方法調(diào)用,使用DOM進行解析時,為文檔的每個element、attribute和comment都創(chuàng)建一個對象,這樣在DOM機制中所運用大量對象的創(chuàng)建和銷毀,都導致其解析速度慢,效率低下。此外,DOM解析內(nèi)存占用量過高,對大信息量文件來說幾乎是不可承受的。況且,DOM在各個瀏覽器中的實現(xiàn)細節(jié)不盡相同,編程模式極為復雜,跨瀏覽器兼容性出現(xiàn)問題的可能性極大[3]。因此,需要一種更為直觀的數(shù)據(jù)封裝格式,直接采用面向?qū)ο蟮恼Z法來解析服務器數(shù)據(jù)?;贘SON的數(shù)據(jù)交換方式解決了這一問題。

3.2 JSON解決方案

JSON是一種輕量級的數(shù)據(jù)交換格式,易于閱讀和編寫,也易于機器解析和生成。它是基于純文本的數(shù)據(jù)格式,可以被用來傳輸簡單的諸如String,Number,Boolean等,也可以傳輸數(shù)組或者復雜的Object對象。JSON對象是一系列以逗號分隔的名稱/值對(name:value),最外面用一對花括號括起來。由此帶來的簡潔性是XML無法比擬的,在數(shù)據(jù)傳輸時,減少的數(shù)據(jù)量可以帶來性能上的提升,這是JSON的第一個優(yōu)點。當JS解析和處理JSON時,就突出了其第二個優(yōu)點。將JSON裝載到內(nèi)存時,只需一個eval()調(diào)用。裝載后,就可以通過名稱直接訪問任何字段了。相對于DOM,極大地提高了效率。

下面針對XML和JSON的解析過程進行對比。

一個XML文件:

Chengdu

Sichuan

China

如果要使用JS解析XML就需要使用DOM并編寫JS代碼將文本變?yōu)橐粋€JS對象。代碼如下:

if (window.ActiveXObject) {

xmlDoc = new ActiveXObject(''Microsoft.XMLDOM'');

xmlDoc.async = false;

xmlDoc.loadXML(xmlString);

}

這是一個JSON對象:{"city":"Chengdu","province":"Sichuan","coun":"China"}。

裝載JSON并調(diào)用字段,

var json= {"city":"Chengdu","pro":"Sichuan","coun":"China"};

var result=eval(‘(‘+json+));

alert(result.city);

這樣就可以通過JavaScript直接對JSON字符串進行解析并獲取對象信息了。

在AJAX應用中,JSON除了大幅提高解析速度以外,在以下方面也發(fā)揮了獨特的優(yōu)勢地位:

(1)數(shù)據(jù)類型。

XML本身沒有數(shù)據(jù)類型概念,它通過Schema來定義數(shù)據(jù)類型。而JSON則提供數(shù)據(jù)類型的支持,并通過使用對象和數(shù)組可以表現(xiàn)結(jié)構(gòu)化數(shù)據(jù)。

(2)表示數(shù)組。

在XML中,需要許多開始標記和結(jié)束標記,數(shù)組形式通常被表示為一個父元素包含數(shù)個相同的子元素。而JSON對數(shù)組是原生支持的。

(3)占用空間大小。

從表現(xiàn)形式來看,XML很明顯代碼臃腫,這主要源于XML的特性,每個元素必須要有開始和結(jié)束標簽。而JSON更加簡潔明了,相同的信息用JSON來表示可以節(jié)省更大的空間使用。在互聯(lián)網(wǎng)應用中,對于相同的信息量在相同帶寬環(huán)境下,JSON會以更小的體積更快速地發(fā)送。

4 結(jié)語

在AJAX構(gòu)建的電子政務信息系統(tǒng)中,使用XML作為數(shù)據(jù)傳送的載體尤其局限性,JSON作為輕量級的數(shù)據(jù)交換格式,在AJAX應用中優(yōu)勢明顯。本文從多角度對二者進行了比較和區(qū)別,使用JSON作為數(shù)據(jù)交換的載體,可以提高系統(tǒng)響應速度,降低等待時間,對于提高系統(tǒng)資源利用率有著很大的貢獻價值。

參考文獻

[1] 李昕.電子政務信息資源共享的保障研究.江西圖書館學刊,2009.

[2] 胡千里.比較XML與JSON在Web中的應用.信息技術(shù).

[3] 胡曉鋒.JSON與XML在網(wǎng)絡數(shù)據(jù)傳輸中的應用分析.

猜你喜歡
電子政務瀏覽器代碼
論基于云的電子政務服務平臺構(gòu)建
反瀏覽器指紋追蹤
電子制作(2019年10期)2019-06-17 11:45:14
創(chuàng)世代碼
動漫星空(2018年11期)2018-10-26 02:24:02
創(chuàng)世代碼
動漫星空(2018年2期)2018-10-26 02:11:00
創(chuàng)世代碼
動漫星空(2018年9期)2018-10-26 01:16:48
創(chuàng)世代碼
動漫星空(2018年5期)2018-10-26 01:15:02
環(huán)球瀏覽器
電子政務工程項目績效評價研究
再見,那些年我們嘲笑過的IE瀏覽器
英語學習(2015年6期)2016-01-30 00:37:23
中國電子政務的“短板”
南風窗(2015年17期)2015-09-10 07:22:44
老河口市| 渭源县| 湄潭县| 轮台县| 鹿邑县| 玉环县| 垫江县| 陵川县| 韶山市| 武威市| 林州市| 灌阳县| 易门县| 平山县| 来凤县| 拉萨市| 象山县| 磐安县| 威海市| 南充市| 安康市| 柳江县| 永丰县| 乐安县| 高阳县| 宜良县| 宣城市| 南京市| 大石桥市| 中卫市| 思南县| 高州市| 桓仁| 集安市| 夹江县| 唐海县| 玉环县| 措勤县| 吴旗县| 旬邑县| 于田县|