Servlet配置详解

通过前面两篇博文我们大致了解了什么是Servlet以及servlet的常用方法和生命周期,接下来这篇博文将介绍servlet的配置信息。

1.基本配置

   web.xml

 <servlet>
  	<servlet-name>QuickStartServlet</servlet-name>
  	<servlet-class>servlet.QuickStartServlet</servlet-class>
  </servlet>
  <servlet-mapping>
  	<servlet-name>QuickStartServlet</servlet-name>
  	<url-pattern>/testServlet</url-pattern>
  </servlet-mapping>

首先我们得明白上面这两个配置参数的意思:

          ①当我们在浏览器输入URL:http://localhost:8080/WEB/testServlet,服务器会到配置文件中查找与URL相匹配的<url-pattern>(找不到匹配的时候会报404错误,即找不到资源);

        ②找到相应的<url-pattern>之后,根据<servlet-name>中配置的名字去查找相应的<servlet-class>(找不到匹配的时候会报500错误,即服务器内部错误,通常是工程代码或环境错误);

      ③找到相应的<servlet-class>之后,会根据<servlet-class>中配置的全类名去查找相应的servlet类,从而进行一系列处理。


明白了上面两个基本参数的意思之后,接下来是<url-pattern>的配置方式

    1)完全匹配,访问的资源与配置的资源完全相同时才可以访问

        例:<url-pattern>/testServlet</url-pattern>

         URL:http://localhost:8080/WEB/testServlet

    2)目录匹配,只要URL路径前面的目录与配置的目录相同就可以访问,与目录后面的内容无关

        格式:<url-pattern>/虚拟路径/*</url-pattern>

        例:<url-pattern>/aaa/bbb/ccc/*</url-pattern>

        URL:http://localhost:8080/WEB/aaa/bbb/ccc/fsfddfdf.html

    3)扩展名匹配,只要扩展名相同就可以访问资源

        格式:<url-pattern>*.扩展名</url-pattern>

        例:<url-pattern>*.aaa</url-pattern>

        URL:http://localhost:8080/WEB/.aaa

※:第二种与第三中不能混用,/aaa/bbb/*.abcd(错误的)

2.服务器启动实例化Servlet配置

      通过上一篇博文我们知道Servlet对象的创建时间默认为第一次访问服务器时,那么什么时候不是默认呢?

    我们可以通过<load-on-startup>3</load-on-startup>来配置服务器启动时就创建servlet对象。其设定值为1,2,3,4,5中任意数字,数值越小优先级越高。 

3.缺省的servlet

    将<url-pattern>配置为/,即<url-pattern>/</url-pattern>表示这是一个缺省的servlet。其含义为:当URL与配置的所有<url-pattern>都不匹配时将由缺省的<url-pattern>中所配置的servlet进行处理。

4.默认页面

当URL中没有指明要获取的资源路径时,如:http://localhost:8080/WEB/,这种情况将返回默认页面。

 <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>
可以在<welcome-file-list>中配置想要返回的默认页面。可以是html、htm、jsp。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值