本文簡單介紹使用eclipse編寫xml時需瞭解的幾點:spring
一、xml的頭是什麼意思? eclipse
以編寫Spring的配置文件爲例來說解xml頭的含義:如下是spring一個最簡單的配置maven
<beans //xml根元素,會根據須要而不一樣,如spring該配置爲beans,maven的pom文件的根元素是Projectspa
//根元素也是要根據實際狀況配置正確xml
xmlns="http://www.springframework.org/schema/beans" ip
//xmlns:xml namespace命名空間,此處的命名空間沒有聲明前綴,因此是默認命名空間。注意:此處不會檢驗所編寫的xml格式標籤是否正確,URL只做爲命名空間,如Java項目中的package的做用同樣,避免重名的尷尬。理論上這個URL能夠隨便定義,只要是別重複就能夠 了,不過不少公司都會把這個URL指向特定的資源。ci
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 資源
//也是命名空間,此處定義了前綴:xsl,只有使用了該前綴的纔是使用了該命名空間的。該命名空間比較特殊,從URL可看到:XMLSchema-instance。用個人理解就是,它是用來指定"xml格式定義文件"的實例。it
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">io
//又xsi前綴可知,該句使用了上面聲明的命名空間,而這個schemaLocation=「{namespace}{schema}」則是用來聲明上面的聲明的命名空間應該受哪一個schema約束(就是該命名空間中所能使用到的標籤元素屬性等,都是在哪裏定義的,且該命名空間只能使用在這個schema中定義的標籤元素屬性等)。
注意:
一、此處的namespace和schema是一一對應的,以前用空格隔開,多對namespace和schema也用空格隔開。
二、寫法:namespace1 schema1 namespace2 schema2;不要namespace1 namespace2 schema1 schema2。
三、此處的namespace都是上面聲明的。
四、此處的schema不可以隨便寫,不然找不到定義的文件。schema的寫法下面會講到
<bean id="" class="">//這些就是spring須要配置的元素屬性了,不在本文講述範圍
<property name="">
</property>
</bean>
</beans>
二、不會自動提示怎麼辦?
使用eclipse編寫xml時沒有自動提示的解決方法:
此處以編寫Spring的配置文件爲例。xsd文件:(xml schema definition)xml語法定義文件(就是上面說到的schema),XML Schema:DTD的替代者
a) window – preferences – eclipse – xml – xml catalog
b) User Specified Entries – add
//此處是根據須要找到本身想要的xsd文件
c). Location: D:\share\0900_Spring\soft\spring-framework-2.5.6\dist\resources\spring-beans-2.5.xsd
d). Key Type: Schema Location
e) . Key: http://www.springframework.org/schema/beans/spring-beans-2.5.xsd //添加完後,個人key自動變爲http://www.springframework.org/schema/beans,本身加上spring-beans-2.5.xsd
//這個key就是上面schema文件的位置,就這個URL做爲schema,和對應的namespace寫到上面的schemaLocation中。
將上述兩點都作好了以後,通常狀況下就會自動提示了。若是還不行,就window – preferences – eclipse – xml
在有上方紅色框處,你須要按某個字符就自動提示,就把該字符加上。我基本把全部都加上了。