多个Servlet的web.xml配置

我们都知道web.xml是用来配置Servlet的映射的,我在网上看到很多人对有多个servlet时如何配置很是困惑,我以前也碰到过类似的问题,后来试了很多种方法才解决,现在把我的一些收获与大家一起分享

       一个例子如下:

<?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> 
 <servlet>
       <servlet-name>Test</servlet-name>
       <display-name>Test</display-name>
       <servlet-class>test.Test</servlet-class>
 </servlet>
 <servlet>
       <servlet-name>RequestInfo</servlet-name>
       <display-name>RequestInfo</display-name>
       <servlet-class>test.RequestInfo</servlet-class>
 </servlet>
 <servlet>
       <servlet-name>FormDeal</servlet-name>
       <display-name>FormDeal</display-name>
       <servlet-class>test.FormDeal</servlet-class>
 </servlet>
 <servlet>
       <servlet-name>SessionExa</servlet-name>
       <display-name>SessionExa</display-name>
       <servlet-class>test.SessionExa</servlet-class>
 </servlet>
 <servlet>
       <servlet-name>UseBeanServlet</servlet-name>
       <display-name>UseBeanServlet</display-name>
       <servlet-class>test.UseBeanServlet</servlet-class>
 </servlet>
 <servlet-mapping>
       <servlet-name>Test</servlet-name>
       <url-pattern>/Test</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
       <servlet-name>RequestInfo</servlet-name>
       <url-pattern>/RequestInfo</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
       <servlet-name>FormDeal</servlet-name>
       <url-pattern>/FormDeal</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
       <servlet-name>SessionExa</servlet-name>
       <url-pattern>/SessionExa</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
       <servlet-name>UseBeanServlet</servlet-name>
       <url-pattern>/UseBeanServlet</url-pattern>
 </servlet-mapping>

 <welcome-file-list> 
       <welcome-file>index.jsp</welcome-file> 
 </welcome-file-list> 
</web-app>

从上面可以看到前面先是一个个servlet的描述信息,后面才是servlet的映射,也就是说要把servlet的描述信息放前面,映射放后面。还有就是<servlet></servlet>标签中间的那三个标签都必须有,我曾试过把<displayname></display-name>

删掉,后来在用浏览器运行servlet时总是出错,目前我也不知道为什么,标签

<servlet-mapping></servlet-mapping>

中间的两个标签

<servlet-name></servlet-name>

<url-pattern></url-pattern>

肯定是少不了的了,不用我多说

转自http://hi.baidu.com/arfish/item/e297d03ca54740c5382ffa74

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在web.xml文件,可以通过以下方式配置多个servlet: 1. 首先,在web.xml文件添加<servlet>标签,用于定义servlet的名称和类名。 2. 然后,在<servlet>标签添加<servlet-name>和<servlet-class>标签,分别用于指定servlet的名称和类名。 3. 接着,在web.xml文件添加<servlet-mapping>标签,用于将servlet映射到URL。 4. 在<servlet-mapping>标签添加<servlet-name>和<url-pattern>标签,分别用于指定servlet的名称和URL模式。 5. 最后,重复以上步骤,添加多个<servlet>和<servlet-mapping>标签,以配置多个servlet。 例如,以下是一个web.xml文件配置两个servlet的示例: <servlet> <servlet-name>servlet1</servlet-name> <servlet-class>com.example.Servlet1</servlet-class> </servlet> <servlet-mapping> <servlet-name>servlet1</servlet-name> <url-pattern>/servlet1</url-pattern> </servlet-mapping> <servlet> <servlet-name>servlet2</servlet-name> <servlet-class>com.example.Servlet2</servlet-class> </servlet> <servlet-mapping> <servlet-name>servlet2</servlet-name> <url-pattern>/servlet2</url-pattern> </servlet-mapping> ### 回答2: 在web.xml文件配置多个servlet可以通过以下步骤进行。 1. 首先,我们需要在web.xml文件的<servlet>标签内配置每个servlet。每个<servlet>标签包含一个<servlet-name>和<servlet-class>标签。例如: <servlet> <servlet-name>Servlet1</servlet-name> <servlet-class>com.example.Servlet1</servlet-class> </servlet> <servlet> <servlet-name>Servlet2</servlet-name> <servlet-class>com.example.Servlet2</servlet-class> </servlet> 2. 接下来,我们需要在web.xml文件的<servlet-mapping>标签为每个servlet配置URL映射。每个<servlet-mapping>标签包含一个<servlet-name>和<url-pattern>标签。例如: <servlet-mapping> <servlet-name>Servlet1</servlet-name> <url-pattern>/servlet1</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>Servlet2</servlet-name> <url-pattern>/servlet2</url-pattern> </servlet-mapping> 3. 这样配置后,当访问"/servlet1"时,服务器将调用名为"Servlet1"的servlet类的doGet或doPost方法进行处理;当访问"/servlet2"时,服务器将调用名为"Servlet2"的servlet类的doGet或doPost方法进行处理。 通过以上的配置,我们可以在一个web应用程序使用多个servlet,并为每个servlet指定对应的URL映射关系。这样,当用户请求不同的URL时,服务器将根据配置自动调用对应的servlet类进行处理。 ### 回答3: 在web.xml配置多个servlet可以通过以下步骤来完成。 1. 打开web.xml文件,该文件位于WEB-INF目录下,是Web应用程序的部署描述符。 2. 在<web-app>标签内部,添加<servlet>标签来配置一个servlet。每个<servlet>标签用于配置一个servlet组件。 3. 在<servlet>标签,添加<servlet-name>标签来指定servlet的名称。该名称在整个Web应用程序必须唯一。 4. 在<servlet>标签,添加<servlet-class>标签来指定servlet的Java类。该类必须实现Servlet接口。 5. 在<servlet>标签之后,添加<servlet-mapping>标签来将servlet映射到某个URL路径。 6. 在<servlet-mapping>标签,添加<servlet-name>标签来指定servlet的名称,与上述<servlet-name>标签配置的名称一致。 7. 在<servlet-mapping>标签,添加<url-pattern>标签来指定URL路径,可以配置多个URL路径,用逗号分隔。 8. 重复2-7步骤,可以配置多个servlet。注意每个<servlet>和<servlet-mapping>标签的名称必须唯一。 9. 保存web.xml文件。 通过以上步骤,我们就可以在web.xml文件配置多个servlet。每个servlet都有一个独立的<servlet-name>和<servlet-class>,然后通过<servlet-mapping>将servlet与URL路径进行映射,使得对应的URL请求能够调用到相应的servlet处理。这样,Web应用程序就能够处理多个不同的URL请求,并使用不同的servlet来进行处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值