使用XML的五種場合

作者: shalang  來源: 博客園  發布時間: 2010-09-19 21:57  閱讀: 1357 次  推薦: 0   原文鏈接   [收藏]  
摘要:有很多人還不明白為什么要使用XML也不知道如何在他們的應用中使用XML。本文列出XML在應用中的五個最令人喜愛的用法。盡管這些并不能包含XML的所有潛在應用,至少是些最重要的領域。

  使用XML的五種場合

  在很多研討會和培訓班上我遇到過許多人,他們還不明白為什么要使用XML也不知道如何在他們的應用中使用XML。一些來自諸如Gartner公司的報告建議說,商業公司不能再做局外人了,不能對XML置之不理。如果你還不清楚XML到底有什么好處的話,你并不是唯一的人。

  我決定把與人們和媒體關于XML話題的交談整理成文,列出XML在應用中的五個最令人喜愛的用法。盡管這些并不能包含XML的所有潛在應用,至少是些最重要的領域。

  1、數據交換

  用XML在應用程序和公司之間作數據交換已不是什么秘密了,毫無疑問應被列為第一位。那么為什么XML在這個領域里的地位這么重要呢?原因就是XML使用元素和屬性來描述數據。在數據傳送過程中,XML始終保留了諸如父/子關系這樣的數據結構。幾個應用程序可以共享和解析同一個XML文件,不必使用傳統的字符串解析或拆解過程。

  相反,普通文件不對每個數據段做描述(除了在頭文件中),也不保留數據關系結構。使用XML做數據交換可以使應用程序更具有彈性,因為可以用位置(與普通文件一樣)或用元素名(從數據庫)來存取XML數據。

  2、Web服務

  Web服務是最令人激動的革命之一,它讓使用不同系統和不同編程語言的人們能夠相互交流和分享數據。其基礎在于Web服務器用XML在系統之間交換數據。交換數據通常用XML標記,能使協議取得規范一致,比如在簡單對象處理協議(Simple Object Access Protocol, SOAP)平臺上。

  SOAP可以在用不同編程語言構造的對象之間傳遞消息。這意味著一個C#對象能夠與一個Java對象進行通訊。這種通訊甚至可以發生在運行于不同操作系統上的對象之間。DCOM, CORBA或Java RMI只能在緊密耦合的對象之間傳遞消息,SOAP則可在松耦合對象之間傳遞消息。

  3、內容管理

  XML只用元素和屬性來描述數據,而不提供數據的顯示方法。這樣,XML就提供了一個優秀的方法來標記獨立于平臺和語言的內容。

  使用象XSLT這樣的語言能夠輕易地將XML文件轉換成各種格式文件,比如HTML, WML, PDF, flat file, EDI, 等等。XML具有的能夠運行于不同系統平臺之間和轉換成不同格式目標文件的能力使得它成為內容管理應用系統中的優秀選擇。

  4、Web集成

  現在有越來越多的設備也支持XML了。使得Web開發商可以在個人電子助理和瀏覽器之間用XML來傳遞數據。

  為什么將XML文本直接送進這樣的設備去呢?這樣作的目的是讓用戶更多地自己掌握數據顯示方式,更能體驗到實踐的快樂。常規的客戶/服務(C/S)方式為了獲得數據排序或更換顯示格式,必須向服務器發出申請;而XML則可以直接處理數據,不必經過向服務器申請查詢-返回結果這樣的雙向“旅程”,同時在設備也不需要配制數據庫。

  甚至還可以對設備上的XML文件進行修改并將結果返回給服務器。想像一下,一臺具有互聯網功能并支持XML的電冰箱將會給市場帶來多么大的沖擊吧。你從此不必早起去取牛奶了!

  5、配制

  許多應用都將配制數據存儲在各種文件里,比如.INI文件。雖然這樣的文件格式已經使用多年并一直很好用,但是XML還是以更為優秀的方式為應用程序標記配制數據。使用.NET里的類,如XmlDocument和XmlTextReader,將配制數據標記為XML格式,能使其更具可讀性,并能方便地集成到應用系統中去。使用XML配制文件的應用程序能夠方便地處理所需數據,不用象其他應用那樣要經過重新編譯才能修改和維護應用系統。

  如前所述,這里提到的五種使用XML的途徑不包括全部場合。

0
0
 
標簽:XML
 
 

文章列表

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()