欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

適用于Java程序員的10道XML面試題 新鮮出爐

 更新時(shí)間:2016年07月07日 15:24:53   投稿:lijiao  
這篇文章主要為大家詳細(xì)介紹了Java程序員的10道XML面試題,感興趣的小伙伴們可以參考一下

包括web開(kāi)發(fā)人員的Java面試在內(nèi)的各種面試中,XML面試題在各種編程工作的面試中很常見(jiàn)。XML是一種成熟的技術(shù),經(jīng)常作為從一個(gè)平臺(tái)到其他平臺(tái)傳輸數(shù)據(jù)的標(biāo)準(zhǔn)。XML面試問(wèn)題包括用于轉(zhuǎn)換XML文件的XSLT技術(shù),XPATH,XQuery等各種XML技術(shù)和XML基礎(chǔ)知識(shí),比如DTD或者Schema。

本文將看到10道常見(jiàn)的XML面試問(wèn)答題。這些問(wèn)題大部分在Java面試中會(huì)問(wèn)到,同時(shí)在C,C++,Scala或其他語(yǔ)言的編程面試中同樣很有用處。XML并不依賴于其他編程語(yǔ)言,同SQL一樣是編程人員所需要的技能之一,因此在任何技術(shù)工作面試之前準(zhǔn)備一些XML問(wèn)題是很有意義的。

XML面試問(wèn)答

下面是我列出的關(guān)于XML技術(shù)經(jīng)常會(huì)問(wèn)到的面試題。這些問(wèn)題并不很難但涵蓋了XML技術(shù)的一些重要領(lǐng)域,比如DTD,XML Schema,XSLT轉(zhuǎn)換,XPATH檢索,XML綁定,XML解析器以及XML的基本知識(shí),比如命名空間,校驗(yàn),屬性,元素等。

問(wèn)題1:XML是什么?

答:XML即可擴(kuò)展標(biāo)記語(yǔ)言(Extensible Markup language),你可以根據(jù)自己的需要擴(kuò)展XML。XML中可以輕松定義<books>, <orders>等自定義標(biāo)簽,而在HTML等其他標(biāo)記語(yǔ)言中必須使用預(yù)定義的標(biāo)簽,比如<p>,而不能使用用戶定義的標(biāo)簽。使用DTD和XML Schema標(biāo)準(zhǔn)化XML結(jié)構(gòu)。XML主要用于從一個(gè)系統(tǒng)到另一系統(tǒng)的數(shù)據(jù)傳輸,比如企業(yè)級(jí)應(yīng)用的客戶端與服務(wù)端。

問(wèn)題2:DTD與XML Schema有什么區(qū)別?

答:DTD與XML Schema有以下區(qū)別:DTD不使用XML編寫(xiě)而XML Schema本身就是xml文件,這意味著XML解析器等已有的XML工具可以用來(lái)處理XML Schema。而且XML Schema 是設(shè)計(jì)于DTD之后的,它提供了更多的類型來(lái)映射xml文件不同的數(shù)據(jù)類型。DTD即文檔類型描述(Document Type definition)是定義XML文件結(jié)構(gòu)的傳統(tǒng)方式。

問(wèn)題3:XPath是什么?

答:XPath是用于從XML文檔檢索元素的XML技術(shù)。XML文檔是結(jié)構(gòu)化的,因此XPath可以從XML文件定位和檢索元素、屬性或值。從數(shù)據(jù)檢索方面來(lái)說(shuō),XPath與SQL很相似,但是它有自己的語(yǔ)法和規(guī)則。了解更多查看怎樣使用XPath從XML文檔中檢索數(shù)據(jù)。

問(wèn)題4:XSLT是什么?

答:XSLT也是常用的XML技術(shù),用于將一個(gè)XML文件轉(zhuǎn)換為另一種XML,HTML或者其他的格式。XSLT為轉(zhuǎn)換XML文件詳細(xì)定義了自己的語(yǔ)法,函數(shù)和操作符。通常由XSLT引擎完成轉(zhuǎn)換,XSLT引擎讀取XSLT語(yǔ)法編寫(xiě)的XML樣式表或者XSL文件的指令。XSLT大量使用遞歸來(lái)執(zhí)行轉(zhuǎn)換。一個(gè)常見(jiàn)XSLT使用就是將XML文件中的數(shù)據(jù)作為HTML頁(yè)面顯示。XSLT也可以很方便地把一種XML文件轉(zhuǎn)換為另一種XML文檔。

問(wèn)題5:什么是XML元素和屬性

答:最好舉個(gè)例子來(lái)解釋。下面是簡(jiǎn)單的XML片斷。

<Orders>
<Order id=”123″>
<Symbol>6758.T</Symbol>
<Price>2300</Price>
<Order>
<Orders>

例子中id是元素的一個(gè)屬性,其他元素都沒(méi)有屬性。

問(wèn)題6:什么是格式良好的XML

答:這個(gè)問(wèn)題經(jīng)常在電話面試中出現(xiàn)。一個(gè)格式良好的XML意味著該XML文檔語(yǔ)法上是正確的,比如它有一個(gè)根元素,所有的開(kāi)放標(biāo)簽合適地閉合,屬性值必須加引號(hào)等等。如果一個(gè)XML不是格式良好的,那么它可能不能被各種XML解析器正確地處理和解析。

問(wèn)題7:XML命名空間是什么?它為什么很重要?

答:XML命名空間與Java的package類似,用來(lái)避免不同來(lái)源名稱相同的標(biāo)簽發(fā)生沖突。XML命名空間在XML文檔頂部使用xmlns屬性定義,語(yǔ)法為xmlns:prefix='URI'。prefix與XML文檔中實(shí)際標(biāo)簽一起使用。下面例子為XML命名空間的使用。

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

問(wèn)題8:DOM和SAX解析器有什么區(qū)別

答:這又是一道常見(jiàn)面試題,不僅出現(xiàn)在XML面試題中,在Java面試中也會(huì)問(wèn)到。DOM和SAX解析器的主要區(qū)別在于它們解析XML文檔的方式。使用DOM解析時(shí),XML文檔以樹(shù)形結(jié)構(gòu)的形式加載到內(nèi)存中,而SAX是事件驅(qū)動(dòng)的解析器。這個(gè)問(wèn)題更詳細(xì)的回答查看DOM和SAX解析器之間的區(qū)別。

問(wèn)題9:XML CDATA是什么

答:這道題很簡(jiǎn)單也很重要,但很多編程人員對(duì)它的了解并不深。CDATA是指字符數(shù)據(jù),它有特殊的指令被XML解析器解析。XML解析器解析XML文檔中所有的文本,比如<name>This is name of person</name>,標(biāo)簽的值也會(huì)被解析,因?yàn)闃?biāo)簽值也可能包含XML標(biāo)簽,比如<name><firstname>First Name</firstname></name>。CDATA部分不會(huì)被XML解析器解析。CDATA部分以“

問(wèn)題10:Java的XML數(shù)據(jù)綁定是什么

答:Java的XML綁定指從XML文件中創(chuàng)建類和對(duì)象,使用Java編程語(yǔ)言修改XML文檔。XML綁定的Java API,JAXB提供了綁定XML文檔和Java對(duì)象的便利方式。另一個(gè)可選的XML綁定方法是使用開(kāi)源庫(kù),比如XML Beans。Java中XML綁定的一個(gè)最大的優(yōu)勢(shì)就是利用Java編程能力創(chuàng)建和修改XML文檔。

以上的XML面試問(wèn)答題收集自很多編程人員,但它們對(duì)于使用XML技術(shù)的每個(gè)人都是有用的。由于XML具有平臺(tái)獨(dú)立的特性,XPath,XSLT,XQuery等XML技術(shù)越來(lái)越重要,XML廣泛用于跨平臺(tái)數(shù)據(jù)傳輸。盡管XML有冗余和文檔體積大等缺點(diǎn),但它在web服務(wù)以及帶寬、速率作為次要考慮因素的系統(tǒng)間數(shù)據(jù)傳輸起很大作用。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解Spring的@Value作用與使用場(chǎng)景

    詳解Spring的@Value作用與使用場(chǎng)景

    這篇文章主要介紹了詳解Spring的@Value作用與使用場(chǎng)景,Spring為大家提供許多開(kāi)箱即用的功能,@Value就是一個(gè)極其常用的功能,它能將配置信息注入到bean中去,需要的朋友可以參考下
    2023-05-05
  • hibernate存取json數(shù)據(jù)的代碼分析

    hibernate存取json數(shù)據(jù)的代碼分析

    這篇文章主要介紹了hibernate存取json數(shù)據(jù)的代碼分析,需要的朋友可以參考下
    2017-09-09
  • SpringBoot SpEL語(yǔ)法掃盲與查詢手冊(cè)的實(shí)現(xiàn)

    SpringBoot SpEL語(yǔ)法掃盲與查詢手冊(cè)的實(shí)現(xiàn)

    這篇文章主要介紹了SpringBoot SpEL語(yǔ)法掃盲與查詢手冊(cè)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • 解決springboot項(xiàng)目打成jar包后運(yùn)行時(shí)碰到的小坑

    解決springboot項(xiàng)目打成jar包后運(yùn)行時(shí)碰到的小坑

    這篇文章主要介紹了解決springboot項(xiàng)目打成jar包后運(yùn)行時(shí)碰到的小坑,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Spring?Boot?項(xiàng)目中?JPA?語(yǔ)法的基本使用方法

    Spring?Boot?項(xiàng)目中?JPA?語(yǔ)法的基本使用方法

    這篇文章主要介紹了?Spring?Boot?項(xiàng)目中?JPA?語(yǔ)法的基本使用方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-10-10
  • 詳解Java 中的 AutoCloseable 接口

    詳解Java 中的 AutoCloseable 接口

    本文對(duì) try-with-resources 語(yǔ)法進(jìn)行了較為深入的剖析,驗(yàn)證了其為一種語(yǔ)法糖,同時(shí)給出了其實(shí)際的實(shí)現(xiàn)方式的反編譯結(jié)果,相信你在看完本文后,關(guān)于 AutoCloseable 的使用你會(huì)有新的收獲。
    2020-11-11
  • Java比較兩個(gè)對(duì)象中全部屬性值是否相等的方法

    Java比較兩個(gè)對(duì)象中全部屬性值是否相等的方法

    本文主要介紹了Java比較兩個(gè)對(duì)象中全部屬性值是否相等的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • feign客戶端設(shè)置超時(shí)時(shí)間操作

    feign客戶端設(shè)置超時(shí)時(shí)間操作

    這篇文章主要介紹了feign客戶端設(shè)置超時(shí)時(shí)間操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-09-09
  • Spring入門(mén)實(shí)戰(zhàn)之Profile詳解

    Spring入門(mén)實(shí)戰(zhàn)之Profile詳解

    什么是spring profile?簡(jiǎn)單講profile就是一組配置,不同profile提供不同組合的配置,程序運(yùn)行時(shí)可以選擇使用哪些profile來(lái)適應(yīng)環(huán)境。下面這篇文章主要介紹了Spring中Profile實(shí)戰(zhàn)的相關(guān)資料,需要的朋友可以參考借鑒。
    2017-02-02
  • MybatisPlus開(kāi)啟二級(jí)緩存的方法詳解

    MybatisPlus開(kāi)啟二級(jí)緩存的方法詳解

    這篇文章主要介紹了MybatisPlus開(kāi)啟二級(jí)緩存的方法詳解,二級(jí)緩存是基于mapper文件的namespace級(jí)別,也就是說(shuō)多個(gè)sqlSession可以共享一個(gè)mapper中的二級(jí)緩存區(qū)域,需要的朋友可以參考下
    2023-11-11

最新評(píng)論