XML+JSON面試題都在這裡

Java3y發表於2018-02-13

XML+JSON常見面試題

什麼是JSON和XML

什麼是JSON和XML

JSON:JavaScript Object Notation 【JavaScript 物件表示法】.

XML:extensiable markup language 被稱作可擴充套件標記語言

JSON和XML都是資料交換語言,完全獨立於任何程式語言的文字格式。

JSON與XML區別是什麼? 有什麼共同點

JSON與XML區別是什麼? 有什麼共同點

共同點:

區別:

  • XML檔案格式複雜,比較佔寬頻,伺服器端與客戶端解析xml話費較多的資源和時間.
  • JSON檔案格式壓縮,佔寬頻小

JSON、XML解析有那些方式?

JSON、XML解析有那些方式?

  • JSON解析方式(阿里巴巴fastjson、谷歌gson,jackJson)
  • XML解析方式(dom、sax、pul)

XML和JSON優缺點

XML的優點

  • A.格式統一,符合標準;
  • B.容易與其他系統進行遠端互動,資料共享比較方便

XML的缺點

  • A.XML檔案龐大,檔案格式複雜,傳輸佔頻寬;
  • B.伺服器端和客戶端都需要花費大量程式碼來解析XML,導致伺服器端和客戶端程式碼變得異常複雜且不易維護;
  • C.客戶端不同瀏覽器之間解析XML的方式不一致,需要重複編寫很多程式碼;
  • D.伺服器端和客戶端解析XML花費較多的資源和時間。

JSON的優點

  • A.資料格式比較簡單,易於讀寫,格式都是壓縮的,佔用頻寬小;
  • B.易於解析,客戶端JavaScript可以簡單的通過eval_r()進行JSON資料的讀取;
  • C.支援多種語言,包括ActionScript, C, C#, ColdFusion, Java, JavaScript, Perl, PHP, Python, Ruby等伺服器端語言,便於伺服器端的解析;
  • D.因為JSON格式能直接為伺服器端程式碼使用,大大簡化了伺服器端和客戶端的程式碼開發量,且完成任務不變,並且易於維護

JSON的缺點

  • A.沒有XML格式這麼推廣的深入人心和喜用廣泛,沒有XML那麼通用性;
  • B.JSON片段的建立和驗證過程比一般的XML稍顯複雜。

參考:http://www.cnblogs.com/SanMaoSpace/p/3139186.html

XPath 是什麼

XPath 是什麼

XPath 是用於從 XML 文件檢索元素的 XML 技術。XML 文件是結構化的,因此 XPath 可以從 XML 檔案定位和檢索元素、屬性或值。從資料檢索方面來說,XPath與 SQL 很相似,但是它有自己的語法和規則。瞭解更多檢視怎樣使用 XPath 從 XML 文件中檢索資料

XML 名稱空間是什麼?它為什麼很重要

XML 名稱空間是什麼?它為什麼很重要

XML 名稱空間與 Java 的 package 類似,用來避免不同來源名稱相同的標籤發生衝突。XML 名稱空間在 XML 文件頂部使用 xmlns 屬性定義,語法為 xmlns:prefix=’URI’。prefix 與XML 文件中實際標籤一起使用。

下面例子為 XML 名稱空間的使用。


<root xmlns:inst="http://instruments.com/inst"
<inst:phone>
<inst:number>837363223</inst:number>
</inst:phone>
</root>

DOM 和 和 SAX 解析器有什麼區別

DOM 和 和 SAX 解析器有什麼區別

  • DOM解析讀取整個XML文件,在記憶體中形成DOM樹,很方便地對XML文件的內容進行增刪改。但如果XML文件的內容過大,那麼就會導致記憶體溢位!
  • SAX解析採用部分讀取的方式,可以處理大型檔案,但只能對檔案按順序從頭到尾解析一遍,不支援檔案的增刪改操作
  1. DOM是基於記憶體的,不管檔案有多大,都會將所有的內容預先裝載到記憶體中。從而消耗很大的記憶體空間。而SAX是基於事件的。當某個事件被觸發時,才獲取相應的XML的部分資料,從而不管XML檔案有多大,都只佔用了少量的記憶體空間。
  2. DOM可以讀取XML也可以向XML檔案中插入資料,而SAX卻只能對XML進行讀取,而不能在檔案中插入資料。這也是SAX的一個缺點。
  3. SAX的另一個缺點:DOM我們可以指定要訪問的元素進行隨機訪問,而SAX則不行。SAX是從文件開始執行遍歷的。並且只能遍歷一次。也就是說我們不能隨機的訪問XML檔案,只能從頭到尾的將XML檔案遍歷一次(當然也可以中間截斷遍歷)。

XSLT 是什麼?

XSLT 是什麼?

XSLT 也是常用的 XML 技術, 用於將一個 XML 檔案轉換為另一種 XML,HTML 或者其他的格式。XSLT 為轉換 XML 檔案詳細定義了自己的語法,函式和操作符。通常由 XSLT 引擎完成轉換,XSLT 引擎讀取 XSLT 語法編寫的 XML 樣式表或者 XSL 檔案的指令。XSLT 大量使用遞迴來執行轉換。一個常見 XSLT 使用就是將 XML 檔案中的資料作為 HTML 頁面顯示。XSLT 也可以很方便地把一種 XML 檔案轉換為另一種 XML 文件.

如果文章有錯的地方歡迎指正,大家互相交流。習慣在微信看技術文章的同學,可以關注微信公眾號:Java3y

相關文章