servlet 部署 中,web.xml 详解

本文详细解析了web.xml文件中的<servlet>和<servlet-mapping>标签的使用方法,包括如何定义servlet及其映射关系,帮助理解Web应用部署描述符的基本配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
      version="2.4">
    <display-name>Welcome to my first jsp </display-name>

    <description>
       Welcome to my jsp
    </description>
    <servlet>
           <servlet-name>Hello</servlet-name>
          <servlet-class>HelloWorld</servlet-class>
      </servlet>

      <servlet-mapping>   
          <servlet-name>Hello</servlet-name>
          <url-pattern>/abc/Hello.do</url-pattern>  
       </servlet-mapping>

</web-app>

现在重点解释一下 web.xml 文件。

    

(1).    解释<servlet>标签:     这是用来创建servlet 的标签.    其中

<servlet-name>是给servlet取名,本文取作Hello, 这个名字是任意取的.     

<servlet-class>是指定这个servlet 所对应的 class文件.    这个文件必须已经编译,并且放在classes文件夹下面.本文是HelloWorld.class    后缀名不写,只写上HelloWorld 

 

需要注意两点: 

第一,servlet取名是任意的,可以与class文件名相同也可以不同.本文就不同.

第二,对应的类文件,如果有包还应带上包的前缀,例如<servlet-class>mypkg1.mypkg2.HelloWorld</servlet-class>这些pakage 的结构必须在classes文件夹中已经建立.

当网站中用到多个servlet 时 可以重复粘贴这个servlet标签,然后修改相应的名字和class文件.


(2).   解释<servlet-mapping>标签:这是用来定义 从web页面访问servlet时 所需的访问后缀字符串与对应的servlet的 映射关系.      其中

<servlet-name>是需要接受访问的servlet 的名字, 这个名字必须与上述<servlet>中的名字一致    .    本文就是Hello.    

<url-pattern>是   是定义 访问这个servlet  所需要给定的访问后缀字符串 本文给定  /abc/Hello.do  是随意给的,在网站的跟目录下加上这个字符串就可以访问指定的servlet了. 

这里的abc 并不是文件夹, 后面的.do 也不是后缀名, 而是随意给的.


也可以改为<url-pattern>/aaabbbccc</url-pattern>

这样通过http://127.0.0.1/:8080/serv/aaabbbccc       这个地址同样可以访问 HelloWorld.

需要注意一点 :     /aaabbbccc 前面的斜线不能丢.    而且这个字符串是直接加在网站的跟路径下访问的,与servlet的 实际路径无关. 本文就是加载 serv 后面访问的.


总结

    难点在于 web.xml的配置,网上很多文章都 直接给出web.xml 而不解释 标签的含义.让人看了不知其所以然,所以就晕了.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值