Servlet激活器

理解Web应用中web.xml文件的配置与Servlet激活器
       在每个web应用程序的WEB-INF目录下都有一个web.xml文件,其中记录了servlet的一些配置信息,在tomcat的conf目录下也有一个web.xml文件,这个xml文件是所有在该tomcat上部署的web应用程序的基础配置,就是说,每个web应用程序的web.xml都是在 conf/web.xml上的基础上进行扩展和覆盖的。

    在一些web应用程序的web.xml文件中可能找到下面的映射:
<servlet-mapping> 
      <servlet-name>invoker</servlet-name>
      <url-pattern>/servlet/*</url-pattern>
</servlet-mapping> 
   这说明当匹配/servlet/*路径时,会调用一个注册名称为invoker的Servlet。可是在web.xml文件中根本找不到这个 Servlet的注册。这里注意,一个web应用程序的部署描述除了包含在该应用程序内部的web.xml文件中,还包含<tomcat主目 录>\conf目录下的web.xml文件中的全局设置信息,在<tomcat主目录>\conf\web.xml文件中可以看到:
<servlet>
        <servlet-name>invoker</servlet-name>
        <servlet-class>
          org.apache.catalina.servlets.InvokerServlet
        </servlet-class>
        <load-on-startup>2</load-on-startup>
</servlet>
    这样,如果有多个web应用程序要用到这个Servlet,我们不必在每个web应用程序中都单独注册这个servlet,而只需在web.xml文件中 映射其访问路径即可。这个Servlet的作用就是激活和调用任何其他Servlet,被称为Servlet激活器。 <load-on-startup>2</load-on-startup>设置它随Tomcat的启动而加载。所以,在web 应用程序中为Servlet激活器invoker映射的访问路径以"/*"结尾,即使某个Servlet程序没有在web.xml文件中注册,我们只需将 Servlet激活器所映射的访问路径中的通配符(*)替换为这个Servlet的完整类名,就可以通过servlet激活器来调用这个Servlet程 序。

转载于:https://my.oschina.net/kyeeliu/blog/30133

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值