2.7 使用部署描述文件将URL映射到servlet

2.7 使用部署描述文件将URL映射到servlet

将 servlet部署到web容器时,会创建一个相当简单的XML文档,这称为部署描述文件(DD)。部署描述文件会告诉容器如何运行你的 servlet和JSP。尽管使用部署描述文件不只是为了映射servlet名,但最起码要知道,可以使用下面介绍的两个XML元素把URL映射到 servlet,其中一个XML元素将客户知道的公共URL名映射到你自己的内部名,另一个XML元素把你自己的内部名映射到一个完全限定类名。用于URL映射的两个部署描述文件元素如下:

  1. <servlet> 元素 可以将内部名映射到完全限定类名
  2. <servlet-mapping> 元素 可以将内部名映射到公共URL名

先来介绍servlet元素
<servlet>元素告诉容器哪些类文件属于一个特定Web应用。

<servlet>元素的<servlet-class>子元素中设置的是类的完全限定名,注意,这个限定名并不带.class后缀。
<servlet>元素的<servlet-name>子元素用于把一个<servlet>元素绑定到一个特定的<servlet-mapping>元素。最终用户绝对看不到<servlet-name>子元素中设置的这个名字,这个名字只在这个部署描述文件的其他部分中使用,称之为内部名,这个内部名现在对应的是类的完全限定名.

现在来介绍<servlet-mapping>元素.
<servlet-mapping>元素的<url-pattern>子元素中设置的是URL。
<servlet-mapping>元素的<servlet-name>子元素与<servlet>元素中的<servlet-name>子元素一样,设置的都是一个内部名。只不过现在这个内部名对应的是<url-pattern>子元素中的URL.

所以你可以看到通过内部名这个桥梁,我们就可以将客户可见的URL,映射到类的完全限定名.