xsi:schemaLocation的作用

在研究Spring如何獲取對象的時候,xsi:schemaLocation突然爆出URL必須是偶數個,從來沒有對applicationContext.xml文檔頭關注過,只是copy過來就用了

利用xmlns就是防止同時兩個xml被同時使用時,兩個文檔帶有不同的內容和定義的元素,XML解析器無法如何處理這些問題,會發生命名衝突。

用xmlns就是爲了給他對應url指定一個命名前綴,比如:

xmlns:context="http://www.springframework.org/schema/context"

<context:component-scan base-package="com.example"/>

語法大概就是:xmlns:namespace-prefix="namespaceURI"

保證"namespace-prefix"這個不重複就行,再次引用這個namespaceURI,需要用這個"namespace-prefix"去調用

 

xmlns 和 xmlns:xsi

xmlns表示默認的Namespace,默認的XML Namespace爲http://www.springframwork.org/schema/beans,默認的Namespace中的元素,可以不使用前綴。

xmlns:xsi表示使用xsi作爲前綴的Namespace,當然前綴xsi需要在文檔中聲明。

 

xsi:schemaLocation的作用

xsi:schemaLocation屬性其實是Namespace爲http://www.w3.org/2001/XMLSchema-instance裏的schemaLocation屬性。

定義了XML Namespace和對應的XSD(Xml Schema Definition)文檔的位置的關係。它的值由一個或多個URI引用對組成,兩個URI之間以空白符分隔(空格和換行均可)。第一個URI是定義的XML Namespace的值,第二個URI給出Schema文檔的位置,Schema處理器將從這個位置讀取Schema文檔,該文檔的targetNamespace必須與第一個URI相匹配。

一切以  xsi:schemaLocation=“”爲準,也就是說xsi:schemaLocation包含的部分一定要出現在名字空間中

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章