映射请求到Servlet
注:此文档由mErcy翻译Servlet2.4规范而来,转载请声明出处,不得用于商业性质。 映射请求技术在这章中描述,它需要Web容器映射客户端的请求到Servlet。 11.1 URL路径用途 在接收客户端请求之上,Web容器决定了Web应用程序转递请求。Web应用程序选择的转递必须有最长上下文路径,其匹配请求的URL的起点。当映射到servlet时,匹配的URL的部分是上下文路径。 用于映射到servlet的路径是来自请求对象减去上下文路径和路径参数之后的URL。URL路径映射规则的顺序如下面,第一个成功的匹配被采用之后,不再进行匹配尝试: 1.容器将会尝试找到一个精确匹配的到Servlet请求路径。一个成功的匹配选择servlet。 2.容器会递归地尝试匹配最长的路径前缀。使用"/"字符作为路径分隔符,在一次逐渐下降寻找文件树形目录路径后完成,最长精确匹配决定servlet的选择。 3.若在URL路径中最后片段包含一个文件扩张名(比如:*.jsp),servlet容器将会尝试为扩展名来匹配一个servlet,使其处理请求。扩展名被定义为最后片段的部分,它是在'.'字符之后的。 4.若按照上述三种规则么有找到匹配的结果,那么容器将会尝试提供合理的请求资源目录,若定义了“defalut”servlet被定义在应用程序中,那么这个“default”的servlet被启用。 容器必须是字符大小写敏感比较作为匹配。 11.2映射规范 在Web应用程部署文件中,下面语义用作定义映射: •以"/"字符开始并且以"/*"的后缀作为结束的字符串被用作路径映射。 •以"*."前缀开始的字符串用于扩展映射。 •仅包含"/"字符的字符串指示"default"应用程序servlet,这这种情况下,servlet路径是请求URI减去上下文路径,并且path info为null。 •其他所有字符仅被用于精确匹配。 11.2.1隐式映射 如果容器有一个内部的JSP容器的话,*.jsp的扩展名被映射到jsp,这个扩展名允许JSP页面被执行当需要时。这种映射术语为隐式映射。若一个*.jsp映射被Web应用程序定义,它的映射优先于隐式优先。 Servlet容器被允许制作其他隐式映射在显式映射优先的时候。比如,一个隐式映射*.shtml能被映射到到功能性包含在服务器上。 11.2.2 映射设置例子 考虑上面映射设置: Example Set of Maps: Path Pattern Servlet /foo/bar/* servlet1 /baz/* servlet2 /catalog servlet3 *.bop servlet4
下面行为结果: Incoming Path Servlet Handling Request /foo/bar/index.html servlet1 /foo/bar/index.bop servlet1 /baz servlet2 /baz/index.html servlet2 /catalog servlet3 /catalog/index.html “default” servlet /catalog/racecar.bop servlet4 /index.bop servlet4
注:/catalog/index.html和/catalog/reacecar.bop例子中,servlet映射"/catalog"is没有被采用因为它不是精确匹配。 |
相关推荐
Servlet 2.4 规范是Java服务器端编程的一个重要里程碑,它定义了Servlet和JavaServer Pages (JSP) 的核心API,为开发基于Java的Web应用程序提供了标准。这一规范在Java EE 5之前广泛使用,是理解Web服务构建基础的...
这个规范定义了Servlet API的版本2.4,为Web应用程序提供了处理HTTP请求和响应的能力。Servlet技术允许开发人员创建动态、交互式的Web应用,而无需依赖于特定的服务器平台。以下是关于Servlet 2.4规范和API的一些...
Servlet 2.4和JSP 2.0是Java Web开发中的两个重要版本,它们为构建动态网页提供了基础框架和规范。在这个压缩包中,包含了这两个版本的核心源代码,为深入理解它们的工作原理和实现机制提供了宝贵的资源。 Servlet ...
Servlet 2.4 API是Java Servlet规范的第三个版本,发布于2003年,它在Servlet 2.3的基础上增加了新的特性和改进。 二、Servlet生命周期 Servlet的生命周期包括加载、初始化、服务、销毁四个阶段。在Servlet 2.4中,...
Servlet 2.4是Java ...综上,"servlet2.4doc"可能包含了关于Servlet 2.4规范的详细文档,涵盖了从Servlet配置、请求响应处理、过滤器到会话管理、安全性、国际化等各个方面的内容,是Java Web开发者的宝贵参考资料。
这个"Servlet2.4-1帮助文档(英文)"的CHM文件很可能是官方发布的API文档,包含了Servlet 2.4规范的所有类、接口、方法和注解的详细说明,是学习和开发Servlet应用的重要参考资料。通过查阅这个文档,开发者可以深入...
8. **Filter接口和FilterChain类**:Servlet 2.4引入了过滤器(Filter)概念,允许在请求到达Servlet之前进行预处理,或在响应离开Servlet之后进行后处理。FilterChain允许过滤器链式调用。 9. **Listener接口**:...
Servlet 2.4 是对Servlet 2.3版本的一个重要更新,虽然它没有引入革命性的新特性,但着重于增强已有功能的清晰度和互操作性。以下是Servlet 2.4中主要的变化和改进: 1. **HTTP/1.1和J2SE 1.3支持**: Servlet 2.4...
这里我们关注的是Servlet 2.4和2.5两个版本的规范。 Servlet 2.4规范: Servlet 2.4是Java Servlet API的一个关键里程碑,发布于2003年,它是J2EE 1.4的一部分。这个版本引入了许多改进和新特性: 1. **Filter**:...
这个版本是2.4,是Servlet技术的一个经典版本,提供了稳定且广泛支持的功能。在本文中,我们将深入探讨Servlet API的关键概念、功能以及如何使用它来开发web应用。 1. **Servlet概述** Servlet是一个Java类,它...
1.6 与 Java Servlet 规范 2.5 版本间的兼容性 ..............................................................................................14 1.6.1 监听器(Listener)顺序 .................................
2.5版本:此版本对servlet规范进行了更进一步的改进,特别是在2.4版本的基础上解决了多个URL不能映射到同一个servlet的问题。此外,servlet 2.5版本还提供了更多的编程便利性,例如,与Servlet API的更好集成、更...
Servlet 2.5是Java Servlet规范的一个版本,它在2006年发布,是对Servlet 2.4的升级,引入了一些新特性以提升Web应用的开发效率和灵活性。在这个源码包中,你将能够深入理解Servlet的工作原理以及如何在实际开发中...
Servlet3.1规范(最终版) JavaTM Servlet 规范 版本 3.1(最终版) Shing Wai Chan Rajiv Mordani [作者] 穆茂强 张开涛 [译者] 2012年6月翻译 2013年7月修订 目录 前言 ............................... 3 ...
Servlet技术是Java EE(以前称为J2EE)中用于创建动态Web应用程序的核心技术之一。它是一种在Web服务器端运行的Java程序,专门设计用来处理来自Web浏览器的HTTP请求,并生成相应的HTTP响应。本文将引导您初步了解...
a.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">Servlet 技术是Java在...
在web.xml配置文件中声明Servlet,指定URL映射。 1.5 使用MyEclipse开发Servlet MyEclipse是集成开发环境,提供了便捷的Servlet创建和部署功能。通过向导可以直接创建Servlet,自动生成模板代码,并自动配置web.xml...
4. **成熟的技术体系**:Servlet规范经过多年的演化和完善,提供了一整套成熟的API和框架,为开发者提供了丰富的工具和资源。 #### 三、创建第一个Servlet程序 下面通过一个简单的示例——“Hello World”Servlet...
这个API是Java Servlet规范的第2.5版本,它在Servlet 2.4的基础上进行了一些增强和改进,以更好地适应不断变化的Web开发需求。 一、Servlet接口 Servlet接口是Servlet的核心,所有Servlet都必须实现这个接口。它...
Servlet API 2.5与JSP API 2.1是Java Web开发中两个至关重要的库文件,它们分别提供了Servlet和JSP(JavaServer Pages)的技术规范。这两个API版本的发布,为开发者提供了处理Web应用程序的强大工具,使得动态网页的...