编程以来,似乎除了VB时期外,.net和java时期都与XML有着至关重要的关系。.net中无论是做C/S ,还是做B/S都至少与一个*.config的文件有联系,其实质就是XML文件。到了java时期对web.xml文件就更是不可忽视了。一方面.net像是一个产品,很多细节不需要自己手动配置了,但java更像是一组标准,各类操作和技术的集成化程度不高,不只是培养编程笨蛋;另一方面java的灵活性就决定了XML的地位。
拿到java web中的web.xml文件后对比.net的web.config文件会发现web.xml文件会明显指出其“xml公式文件”——schema。
Schema描述了XML文档的结构,被视为是替代DTD的另一标准,理由总结如下:
1、 XML Schema内容比DTD丰富,作用更大
2、 XML Schema针对将来的额外内容是可扩展的
3、 XML Schema是以XML语言编写而成的
4、 XML Schema支持数据类型
5、 XML Schema支持命名空间
XML Schema本身含有很多元素用于描述XML文档结构等,几个主要的简介如下:
(1) 元素师每个XML Schema文件的根元素
(2) 元素定义属性
(3) 为schema注释指定了最高阶层的元素
(4) 定义了schema里的文本注释
(5) 指明了子元素必须以一定顺序出现。每个子元素可以出现任意次
(6) 只允许 声明里的元素里的一个元素出现在所含的元素中
(7) 定义了在所属范围内一个元素或属性值必须是独特(没有重复的)
现在我们打开我们的java web项目,找到web.xml文件,简单陈列如下:
它的根节点是 此阶段中定了了一些信息简介如下:
Xmlns指定此xml文件的命名空间,起作用类似与java中package。
Xmlns:xsi指定了此xml文件遵守的规范
Xsi:schemaLocation指具体用到的schema资源。
好了,现在打开Xsi:schemaLocation指定的网址,我们会发现有很多xsd文件,其中我们的java web的xml文件中所用到的schema文件是web-app_2_4.xsd,打开它,我们就会看到日常用到的web.xml文件中 标签的定义和描述。结合前面讲的Schema知识,相信这个 web-app_2_4.xsd文件我们能够大致读懂,不信你读读!
本文重在强调XML及与其相关技术在软件项目中的重要性,无论是在那种平台上,无论是做什么类型的项目,其作用都不容小觑,了解xml的schema等信息能够更好的配置我们的项目。当然xml及其相关技术的应用远不止与此,例如在数据交换等方面的应用也会在项目实战中遇到。