<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<!--配置Servlet -->
<!--配置servlet类路径 -->
<servlet>
<servlet-name>Myservlet</servlet-name>
<servlet-class>com.servlet.MyServlet</servlet-class>
</servlet>
<!--配置访问方式 -->
<servlet-mapping>
<servlet-name>MyServlet</servlet-name>
<url-pattern>/my</url-pattern>
</servlet-mapping>
<!--配置第二个servlet -->
<servlet>
<servlet-name>my2</servlet-name>
<servlet-class>com.servlet.MyServlet2</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>my2</servlet-name>
<url-pattern>/my2</url-pattern>
</servlet-mapping>
</web-app>

<servlet>和<servlet-Mapping>,这两个一个是配置Servlet,一个是配置其映射信息,其中<servlet>中的<servlet-name>可以随意指定,但要有一定的意义,一般取为类的名称,例如我的类名为MyServlet,这里取名为MyServlet,下面的<servlet-class>是类的全路径,package+calssname,一定要是全路径!
<servlet-Mapping>是映射信息,它也有一个<servlet-name>,里面的名字是对应的Servlet名,也就是我们上面配置的Servlet名字,这里是MyServlet,下面的是映射路径,也就是访问Servlet的名称,这里也是以方便和有意义为前提的,是我们在访问Servlet在浏览器地址栏后面输入的那个信息,例如我的映射路径命名为/my,在地址栏中输入http://localhost/20181210/my

Servlet的细节

一个已经注册的Servlet可以被多次映射

         <servlet>
<servlet-name>Demo1</servlet-name>
<servlet-class>com.web.Demo1</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Demo1</servlet-name>
<url-pattern>/Demo1</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Demo1</servlet-name>
<url-pattern>/nmsl</url-pattern>
</servlet-mapping>

无论我访问的是http://localhost:8080/Demo1还是http://localhost:8080/nmsl。我访问的都是Demo1。

Servlet映射的URL可以使用通配符

这里说一下在配置映射路径的时候,有以下两种:
                    url-pattern                         浏览器输入
精确匹配             /servlet                   http://localhost:8080/day10/servlet
                                                  
 
模糊匹配             /*                   http://localhost:8080/asd/任意路径
                         /lm/*                 http://localhost:8080/asd/lm/任意路径
                     *.后缀名              http://localhost:8080/asd/任意路径.do

注意:
                   1)url-pattern要么以 / 开头,要么以*开头。  绝对不能漏掉斜杠
                   2)不能同时使用两种模糊匹配,例如 /lm/*.do是非法路径
                   3)当有输入的URL有多个servlet同时被匹配的情况下:
                                     3.1 精确匹配优先
                                     3.2以后缀名结尾的模糊匹配先级最低

servlet(二):Servlet的web.xml配置的更多相关文章

  1. Servlet中Web.xml配置详解(二)

    5.2 分配JSP初始化参数给JSP页面提供初始化参数在三个方面不同于给servlet提供初始化参数.1)使用jsp-file而不是servlet-class.因此,WEB-INF/web.xml文件 ...

  2. 初学servlet之使用web.xml配置

    先写两个servlet,之后展示web.xml配置 package app01c;import java.io.IOException;import java.io.PrintWriter;impor ...

  3. eclipse环境Dynamic web module version 3.1版本的进步,简化Dynamic web object 中Servlet类的配置,不用web.xml配置<Servlet>

    eclipse环境Dynamic web module version 3.1版本之前,Dynamic web object 中Servlet类的配置,要在web.xml 配置<Servlet& ...

  4. springmvc学习指南 之---第27篇 spring如何实现servlet3.0无web.xml 配置servlet对象的

    writedby 张艳涛 基于web.xml配置,有人说麻烦,tomcat给按照servlet3.0,实现了基于注解@WebServlet,有人说springmvc的springmvc.xml配置麻烦 ...

  5. springMVC WebApplicationInitializer 替代web.xml 配置Servlet 之原理

    Servlet 3.0之前 ,xml  配置 在过去搭建spring + springMCV ,首先第一步要做的是什么 ,就是要配置web.xml 文件 ,把springMVC 中的Servlet 加 ...

  6. 160329(二)、web.xml配置详解

    1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个Servl ...

  7. java web.xml配置详解

    1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个Servl ...

  8. web.xml 配置介绍

    这个不是原创,有点早了,具体从哪里来的已经记不得了.但是东西是实实在在的. 1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<c ...

  9. struts2拦截器-自定义拦截器,放行某些方法(web.xml配置)

    一.web.xml配置 <filter> <filter-name>encodingFilter</filter-name> <filter-class> ...

  10. ssm web.xml配置解析

    以下为web.xml的配置<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi=& ...

随机推荐

  1. Codeforces878 A. Short Program

    题目类型:位运算 传送门:>Here< 题意:给出\(N\)个位运算操作,要求简化操作数量,使之结果不受影响(数据在1023之内) 解题思路 我们发现数字的每一位是独立的.也就是说,每一个 ...

  2. 【UOJ386】【UNR #3】鸽子固定器 链表

    题目描述 有 \(n\) 个物品,每个物品有两个属性:权值 \(v\) 和大小 \(s\). 你要选出 \(m\) 个物品,使得你选出的物品的权值的和的 \(d_v\) 次方减掉大小的极差的 \(d_ ...

  3. LOJ #2135. 「ZJOI2015」幻想乡战略游戏(点分树)

    题意 给你一颗 \(n\) 个点的树,每个点的度数不超过 \(20\) ,有 \(q\) 次修改点权的操作. 需要动态维护带权重心,也就是找到一个点 \(v\) 使得 \(\displaystyle ...

  4. shell之数学运算

    let #!/bin/bash no1=1; no2=5; let result=no1+no2 ##不能留空格 echo $result #自加 let no++ #自减 let no-- #简写 ...

  5. jmeter5.1测试websocket接口

    jmeter没有websocket协议的取样器,需要我们自己开发,但是网上已经有大神先开发好了,[相关jar包,点击左侧加群获取] 只需要放到jmeter的ext目录(D:\apache-jmeter ...

  6. Luogu P1654 OSU!

    写法和CF235B Let's Play Osu!非常相似.但是这个题厉害就厉害在统计的贡献里面有一个平方的期望,而这个平方的期望和期望的平方是完全不一样的,需要另外统计,逻辑上仔细想一想就会明白. ...

  7. springmvc 项目单元测试

    对于web项目如果希望通过url来进行单元测试,但是启动服务器和建立http client 来进行测试非常麻烦,并且依赖网络环境.这样我们可以通过引入MockMvc进行测试. 一.引入jar包 < ...

  8. 深入学习CSS外边距margin(重叠效果,margin传递效果,margin:auto实现块级元素水平垂直居中效果)

    前言 margin是盒模型几个属性中一个非常特殊的属性.简单举几个例子:只有margin不显示当前元素背景,只有margin可以设置为负值,margin和宽高支持auto,以及margin具有非常奇怪 ...

  9. [物理学与PDEs]第4章习题1 反应力学方程组形式的化约 - 动量方程与未燃流体质量平衡方程

    试证明: 利用连续性方程, 可将动量方程 (2. 14) 及未燃流体质量平衡方程 (2. 16) 分别化为 (2. 19) 与 (2. 20) 的形式. 证明: 注意到 $$\beex \bea \c ...

  10. [物理学与PDEs]第3章第2节 磁流体力学方程组 2.4 不可压情形的磁流体力学方程组

    不可压情形的磁流体力学方程组 $$\beex \bea \cfrac{\rd {\bf H}}{\rd t}-({\bf H}\cdot\n){\bf u}&=\cfrac{1}{\sigma ...