在创建 JavaWeb 项目时,勾选 Generate web.xml deployment descriptor,会在 WebContent 文件夹下的 WEB-INF 文件夹下生成一个 web.xml文件。
在这里插入图片描述
  打开之后,会看到其中代码如下所示。跟 HTML 一样 XML 也是标记语言(可拓展标记语言),所以语法上比较容易理解。

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" id="WebApp_ID" version="4.0">
  <display-name>JavaWeb1</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
</web-app>

  ⑴ . <?xml version="1.0" encoding="UTF-8"?>文档声明,表明使用的版本号和编码

  ⑵ . 最大的标签是<web-app>,在这个标签中,有一些属性值

  1. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee"
    xmlns 表示的是 xml 的命名空间(ns),上面的是 xml 命名空间的实例,下面的是 xml 的命名空间的默认名,都是固定写法;
  2. xsi:schemaLocation="
    http://xmlns.jcp.org/xml/ns/javaee
    http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
    xsi 就是上面定义的 xml 命名空间的实例,xsi:schemaLocation 是在 xsi 实例下,定义位置的命名。
    xsd 文件是 xml schema definition,可以理解这个文件就是后面使用的规则,只要不符合该文件的规则就会报错;
    注:因为这个网站是个外国的网站,在使用过程中,经常会因为下载不下来这个文件而导致 XML 报错,以后会用到一种离线的方式。
  3. id="WebApp_ID",唯一标识,类似于 HTML 标签的 id 属性,如果在一个 Tomcat 下有多个 Java 工程时,该属性值不可重复;
  4. version="4.0",版本,版本不同,<web-app>标签的内容会有些变化。

  ⑶ . <diplay-name>JavaWeb1</display-name>,默认名字就是我们创建的 JavaWeb 工程的名字,作用不大。
  ⑷ . <welcome-file>index.html</welcome-file>,欢迎页面,也就是默认情况下打开时看到的页面,默认有6个欢迎页面

  web.xml 文件的一个重要作用在于,对 Servlet 版本在3.0以下的情况下,运行 Servlet 文件。详情见这里

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐