web.xml文件的 xsd引用(或dtd引用)学习

简介:

1. 为什么web.xml会有不同版本的xsd引用:

  JDK依赖变化;

  或 servlet(JAVA EE)自身API的改变;

 

2. 为什么会有dtd和xsd两个版本的区别

 

  我是在这篇文章中看到的,作者似乎拷贝了一段API说明:

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
There are two ways to specify the schema for a the web.xml file (Deployment Descriptor).
DTD - Document Type Definition
XSD - XML Schema Definition
The XSD version is preferred since JSP 2.0 / Servlets 2.4 (eg: Tomcat 5.5). Note that the XML encoding can be specified as ISO-8859-1, UTF-8, or any other valid encoding in either version, and should match the actual encoding of your text file.
 
XSD example for JSP 2.1 / Servlets 2.5 (Tomcat 6.0):
 
<? xml  version="1.0" encoding="ISO-8859-1"?>
< web-app  xmlns="http://java.sun.com/xml/ns/j2ee"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_5.xsd"
      version="2.5">
 
</ web-app >
XSD example for JSP 2.0 / Servlets 2.4 (Tomcat 5.5):
 
<? xml  version="1.0" encoding="ISO-8859-1"?>
< web-app  xmlns="http://java.sun.com/xml/ns/j2ee"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
      version="2.4">
 
</ web-app >
DTD example for JSP 1.2 / Servlets 2.3 (Tomcat 5):
 
<? xml  version="1.0" encoding="ISO-8859-1"?>
<! DOCTYPE  web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">
 
< web-app >
 
</ web-app >

 

 在这里,也就说了,DTD是早期支持的方式,后期尽量用XSD。为什么XSD成为趋势,这里有个很好的注解《如何使用XSD》《XML中DTD,XSD的区别与应用》。

DTD和XSD相比:DTD 是使用非 XML 语法编写的。

DTD 不可扩展,不支持命名空间,只提供非常有限的数据类型 .

 

3. web.xml几个版本的列表

web.xml v2.3

<?xml version="1.0" encoding="ISO-8859-1"?>  
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">  
<web-app></web-app>

 

web.xml v2.4

<web-app id="WebApp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"   

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  

xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">  

</web-app>  

 

web.xml v2.5

 

 

<?xml version="1.0" encoding="UTF-8"?>  

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"  

version="2.5">  

</web-app> 

 

 

 

 

web.xml v3.0 

<?xml version="1.0" encoding="UTF-8"?>  

<web-app  version="3.0"  xmlns="http://java.sun.com/xml/ns/javaee"  

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">  

</web-app>  

 本文转自二郎三郎博客园博客,原文链接:http://www.cnblogs.com/haore147/p/5473697.html,如需转载请自行联系原作者

相关文章
|
9天前
|
XML Java 数据库连接
mybatis中在xml文件中通用查询结果列如何使用
mybatis中在xml文件中通用查询结果列如何使用
9 0
|
11天前
|
XML JavaScript 前端开发
xml文件使用及解析
xml文件使用及解析
|
29天前
|
XML C# 数据格式
使用C#操作XML文件
使用C#操作XML文件
11 0
|
30天前
|
Java
java实现遍历树形菜单方法——映射文件VoteTree.hbm.xml
java实现遍历树形菜单方法——映射文件VoteTree.hbm.xml
9 0
|
1月前
|
Kubernetes Cloud Native Java
Activiti 简介以及最新activiti依赖 pom.xml文件(使用时注意对应版本号)
Activiti 简介以及最新activiti依赖 pom.xml文件(使用时注意对应版本号)
37 1
|
2月前
|
数据可视化 Shell Linux
shell+crontab+gitlab实现ecs服务器文件的web展示
本文通过把ecs服务器上的文件定时上传至gitlab,实现文件的页面可视化和修改历史。技术点:shell、crontab、gitlab。
50 3
|
30天前
|
XML Java 数据库连接
struts+hibernate+oracle+easyui实现lazyout组件的简单案例——hibernate的config文件(hibernate.cfg.xml)
struts+hibernate+oracle+easyui实现lazyout组件的简单案例——hibernate的config文件(hibernate.cfg.xml)
10 0
|
2月前
|
XML JavaScript 数据格式
打开 XML 文件报错 There is no Unicode byte order mark
打开 XML 文件报错 There is no Unicode byte order mark
41 0
|
14天前
|
安全 前端开发 Java
Java Web开发知识点学习总结
Java Web开发涉及Java基础、Servlet、JSP、数据库操作(SQL+JDBC)、MVC设计模式、Spring框架、Hibernate ORM、Web服务(SOAP&RESTful)、安全认证(HTTP Basic/Digest/OAuth)及性能优化(缓存、异步、负载均衡)。
15 3
|
26天前
Mybatis+mysql动态分页查询数据案例——配置映射文件(HouseDaoMapper.xml)
Mybatis+mysql动态分页查询数据案例——配置映射文件(HouseDaoMapper.xml)
14 1