`
810364804
  • 浏览: 819750 次
文章分类
社区版块
存档分类
最新评论

菜鸟学编程(四)——Servlet的基本配置

 
阅读更多

学习JavaWeb的人没有不知道Servlet的吧,而要用Servlet就需要在web.xml中进行配置。相信有很多初学者跟我当初一样,对于一些配置参数不是很理解,今天就说说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>/Servlet</url-pattern>  
</servlet-mapping>  


Servlet的配置包括两部分:


1,<servlet>配置Servlet的名字和完整类路径:

servlet-name是自定义的,就是给Servlet取个名字。

servlet-class是Servlet完整的类,就是从一开始的包一直“.”到该Servlet。


2,<servlet-mapping>是用来截获请求的,包括servlet-name和url-pattern。

servlet-name跟<servlet>中的servlet-name是对应的,两个servlet-name一定要一致,否则会找不到对应的Servlet。

url-pattern是截获请求的规则,当表单提交的时候,会根据特定的规则调用相应的Servlet。下面会具体阐述。


url-pattern大致分为以下几种方式:


1,完全匹配

如:<url-pattern>/servlet/MyServlet.do</url-pattern>


2,目录匹配

如:<url-pattern>/servlet/*</url-pattern>

3,扩展名匹配

如:<url-pattern>*.do</url-pattern>


在web.xml文件中,以下语法用于定义映射:

l. 以”/’开头和以”/*”结尾的是用来做路径映射的。

2. 以前缀”*.”开头的是用来做扩展映射的。

3. “/” 是用来定义default servlet映射的。

4. 剩下的都是用来定义详细映射的。比如: /aa/bb/cc.action

容器查找规则:

1,容器会首先查找完全匹配,如果找不到,再查找目录匹配,如果也找不到,就查找扩展名匹配。
2,如果一个请求匹配多个“目录匹配”,容器会选择最长的匹配。

例如:servletA的url-pattern为/test/*,而servletB的url-pattern为/test/b/*,此 时访问http://localhost/test/b时,容器会选择路径最长的servlet来匹配,也就是这里的servletB。


注意:”/*.action”这样一个看起来很正常的匹配会错。因为这个匹配即属于路径映射,也属于扩展映射,会导致容器无法判断。


上面讲解的只是Servlet最基本的一个配置,还有很多其他的参数,有兴趣可自行研究,这里就不一一赘述了。欢迎交流探讨。




分享到:
评论

相关推荐

    菜鸟成长手册2009——CPU-内存-硬盘篇 - 硬件知识精华

    菜鸟成长手册2009——CPU-内存-硬盘篇 - 硬件知识精华菜鸟成长手册2009——CPU-内存-硬盘篇 - 硬件知识精华菜鸟成长手册2009——CPU-内存-硬盘篇 - 硬件知识精华菜鸟成长手册2009——CPU-内存-硬盘篇 - 硬件知识精华...

    Word版,Python GUI设计——Tkinter菜鸟编程(上、中、下)

    由于其易用性和跨平台特性,Tkinter成为了Python初学者学习GUI编程的首选。 #### 二、建立窗口 ##### 1.1 创建基本窗口 在Tkinter中,创建窗口的第一步是导入`tkinter`模块,并通过`Tk()`函数创建一个主窗口对象...

    C语言编程规范,菜鸟质的飞跃——标准专业的程序必看

    这个编程规范很不错,让你知道书上的程序和网上的程序的那些编排,变量的定义为什么是这样定义,因为你不知道在程序界有他们共同的规定,当你了解了这篇文章你的程序会突飞猛进,会让别人一看就是专业人员写出来的...

    菜鸟学习——安装交叉编译记录

    ### 菜鸟学习——安装交叉编译记录 #### 知识点概述 本文将详细介绍如何在Linux环境下安装交叉编译工具链,并通过一个具体的示例(编译JPEG库)来展示整个过程。交叉编译是指在一个平台上编译出可以在另一个平台上...

    从Java菜鸟到专家的资料

    这份名为“从Java菜鸟到专家的资料”的压缩包文件包含了丰富的学习资源,旨在帮助初学者逐步成长为Java领域的专家。以下是对各个文件的详细解读: 1. **J2EE研究文集.chm**:这个文件专注于Java企业级应用开发,...

    c语言经典菜鸟编程实例

    在IT领域,C语言是一种...总之,"C语言经典菜鸟编程实例"是一个很好的起点,通过系统学习和实践,初学者能逐步建立起对C语言的深刻理解,并培养出良好的编程思维。不断练习和挑战自己,是成为熟练C语言程序员的关键。

    菜鸟构建个人网站——“纯真年代”建站全过程(五).pdf

    在本教程中,我们将学习一些基本的HTML标记,如标题标记`&lt;h1&gt;`到`&lt;h6&gt;`,段落标记`&lt;p&gt;`,链接标记`&lt;a&gt;`,图像标记`&lt;img&gt;`等。同时,也会逐步介绍JavaScript的基础语法,如变量声明、函数创建以及DOM操作,帮助你实现...

    菜鸟也玩LINUX——brk()漏洞重提.pdf

    Linux 操作系统中的 brk 漏洞重提 Linux 操作系统中,brk 函数用于管理堆的大小和位置。然而,在某些版本的 Linux 系统中,brk 函数存在漏洞,导致攻击者可以通过操纵 brk 函数来攻击系统。在本文中,我们将介绍 ...

    Java学生管理系统——菜鸟

    【Java学生管理系统——菜鸟】 Java学生管理系统是一款针对初学者设计的项目,旨在帮助他们理解和实践Java编程语言以及数据库管理的基本概念。这个系统主要是用来管理学生的信息,如姓名、学号、年龄、专业等,同时...

    物联网——智能物流菜鸟京东PPT学习教案.pptx

    物联网——智能物流菜鸟京东PPT学习教案.pptx

    php程序员菜鸟成长手记——php入门教程

    ### PHP程序员菜鸟成长手记——php入门教程 ...以上内容涵盖了《php程序员菜鸟成长手记——php入门教程》的主要知识点,从PHP的基本概念、开发环境搭建到具体的编程技术和数据库操作,为初学者提供了全面的学习指导。

    Java图解创意编程:从菜鸟到互联网大厂之路.pptx

    《Java图解创意编程:从菜鸟到互联网大厂之路》这本书是一本面向初学者的编程书籍,旨在帮助读者从零基础开始学习Java编程,并逐步掌握互联网大厂常用的核心技术。本书以图解的方式进行讲解,通过大量的实例和图表,...

    Linux基础命令学习——工作目录切换命令(一)

    一名菜鸟学习编程技术,记录所学知识并分享给大家,希望大家多多支持。 今天来写一篇关于学习Linux基础命令——工作目录切换命令的博文,也实践了很多,总结给大家一起学习! 文章目录1. “`pwd命令“`2. “`cd命令...

    Servlet与JSP核心编程

    ### Servlet与JSP核心编程知识点详解 #### 一、Servlet基础概念 - **Servlet定义**:Servlet是一种Java程序,...通过上述内容的学习,开发者可以更深入地理解Servlet与JSP的核心编程技巧,提高开发效率和应用质量。

    从菜鸟到高手系列专题——Linux系统手机应用.pdf

    从菜鸟到高手系列专题——Linux系统手机应用.pdf

    C++编程惯用法——高级程序员常用方法和技巧.pdf

    《C++编程惯用法——高级程序员常用方法和技巧》是Robert B. Murray所著的一本详细介绍C++编程中高级技巧和策略的书籍。本书致力于帮助初中级C++程序员通过掌握编程惯用法,提高编程效率和代码质量。作者结合自己...

Global site tag (gtag.js) - Google Analytics