本文简单介绍使用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
在有上方红色框处,你须要按某个字符就自动提示,就把该字符加上。我基本把全部都加上了。