- 浏览: 567996 次
文章分类
- 全部博客 (235)
- 数据库 (12)
- j2se (10)
- JQuery (2)
- 经验总结 (4)
- 防毒 (1)
- Struts (20)
- Spring (12)
- 项目 (3)
- 电脑维修项目 (1)
- Eclipse (2)
- JSP (13)
- mysql (5)
- Hibernate (54)
- ssh (1)
- 学习网站 (1)
- tomcat (9)
- servlet (24)
- java语言基础 (1)
- jbpm (1)
- linux (0)
- 技巧积累 (1)
- javaBean (2)
- 设计模式 (2)
- 实用的操作 (9)
- oracle (1)
- UML学习 (1)
- 版本控制 (1)
- 框架 (9)
- javaWeb基础 (13)
- c语言 (0)
- ant (0)
- 关于权限 (3)
- 真正开发有用 (5)
- javascript (2)
- 算法 (1)
- J2EE (1)
- junit (1)
最新评论
-
alleni123:
不错 一搜就搜到这个了
ssession和servletContext的比较 -
hua7381:
楼主,你真实帮了大忙了!!
万能乱码处理---url传中文 -
albrich:
1楼是正解
摘] 装了个Tomcat遇到的问题 -
JA_mcj:
ssession和servletContext的比较 -
haotw:
看了很有帮助,总算对hibernate的延迟加载有一定的了解了 ...
[转]hibernate延迟加载
Servlet 2.4 的新功能
2003 年11 月底,J2EE 1.4 规范正式发布,Servlet也从原本的2.3版升级至2.4版。其中主要
新增的功能有以下三点:
(1) web.xml DTD 改用XML Schema;
(2) 新增Filter 四种设定;
(3) 新增Request Listener、Event 和Request Attribute Listener、Event。
一、web.xml 改用XML Schema
Servlet 在2.4 版之前,web.xml 都是使用DTD(Document Type Definition)来定义XML 文件内
容结构的,因此,Servlet 2.3 版 web.xml 一开始的声明如下:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
…………
</web-app>
到了Servlet 2.4 版之后,web.xml 改为使用XML Schema,此时web.xml 的声明如下:
<?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/web-app_2_4.xsd"
version="2.4">
…………
</web-app>
由DTD 改为Schema,主要加强两项功能:
(1) 元素可不依照顺序设定;
(2) 更强大的验证机制。
下面的范例,在Servlet 2.3 版是不合规则的web.xml 文件:
<web-app>
...
<servlet>
<servlet-name>ServletA</servlet-name>
<servlet-class>tw.com.javaworld.servlet.ServletA</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ServletA</servlet-name>
<url-pattern>/ServletA/*</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>ServletB</servlet-name>
<servlet-class> tw.com.javaworld.servlet.ServletB</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ServletB</servlet-name>
<url-pattern>/ServletB /*</url-pattern>
</servlet-mapping>
...
</web-app>
因为<servlet-mapping>元素必须在<servlet>元素之后,因此,上述的范例要改为:
<web-app>
...
<servlet>
<servlet-name>ServletA</servlet-name>
<servlet-class>tw.com.javaworld.servlet.ServletA</servlet-class>
</servlet>
<servlet>
<servlet-name>ServletB</servlet-name>
<servlet-class> tw.com.javaworld.servlet.ServletB</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ServletA</servlet-name>
<url-pattern>/ServletA/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>ServletB</servlet-name>
<url-pattern>/ServletB /*</url-pattern>
</servlet-mapping>
...
</web-app>
不过在Servlet 2.4版之后,原来的范例也算是一个合法的web.xml文件,不再须注意元素的顺序。
除此之外,Servlet 2.4 版web.xml 的Schema 更能提供强大的验证机制,例如:
(1) 可检查元素的值是否为合法的值。例如:<filter-mapping>的<dispatcher>元素,其值只
能为REQUEST、FORWARD、INCLUDE 和ERROR,如下所示:
<filter-mapping>
<filter-name>Hello</filter-name>
<url-pattern>/CH11/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
若<dispatcher>元素的值不为上述四种时,此web.xml 将会发生错误。
(2) 可检查如Servlet、Filter 或EJB-ref 等等元素的名称是否惟一。例如:
<servlet>
<servlet-name>ServletA</servlet-name>
<servlet-class>tw.com.javaworld.servlet.ServletA</servlet-class>
</servlet>
<servlet>
<servlet-name>ServletA</servlet-name>
<servlet-class>tw.com.javaworld.servlet.ServletB</servlet-class>
</servlet>
2003 年11 月底,J2EE 1.4 规范正式发布,Servlet也从原本的2.3版升级至2.4版。其中主要
新增的功能有以下三点:
(1) web.xml DTD 改用XML Schema;
(2) 新增Filter 四种设定;
(3) 新增Request Listener、Event 和Request Attribute Listener、Event。
一、web.xml 改用XML Schema
Servlet 在2.4 版之前,web.xml 都是使用DTD(Document Type Definition)来定义XML 文件内
容结构的,因此,Servlet 2.3 版 web.xml 一开始的声明如下:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
…………
</web-app>
到了Servlet 2.4 版之后,web.xml 改为使用XML Schema,此时web.xml 的声明如下:
<?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/web-app_2_4.xsd"
version="2.4">
…………
</web-app>
由DTD 改为Schema,主要加强两项功能:
(1) 元素可不依照顺序设定;
(2) 更强大的验证机制。
下面的范例,在Servlet 2.3 版是不合规则的web.xml 文件:
<web-app>
...
<servlet>
<servlet-name>ServletA</servlet-name>
<servlet-class>tw.com.javaworld.servlet.ServletA</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ServletA</servlet-name>
<url-pattern>/ServletA/*</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>ServletB</servlet-name>
<servlet-class> tw.com.javaworld.servlet.ServletB</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ServletB</servlet-name>
<url-pattern>/ServletB /*</url-pattern>
</servlet-mapping>
...
</web-app>
因为<servlet-mapping>元素必须在<servlet>元素之后,因此,上述的范例要改为:
<web-app>
...
<servlet>
<servlet-name>ServletA</servlet-name>
<servlet-class>tw.com.javaworld.servlet.ServletA</servlet-class>
</servlet>
<servlet>
<servlet-name>ServletB</servlet-name>
<servlet-class> tw.com.javaworld.servlet.ServletB</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ServletA</servlet-name>
<url-pattern>/ServletA/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>ServletB</servlet-name>
<url-pattern>/ServletB /*</url-pattern>
</servlet-mapping>
...
</web-app>
不过在Servlet 2.4版之后,原来的范例也算是一个合法的web.xml文件,不再须注意元素的顺序。
除此之外,Servlet 2.4 版web.xml 的Schema 更能提供强大的验证机制,例如:
(1) 可检查元素的值是否为合法的值。例如:<filter-mapping>的<dispatcher>元素,其值只
能为REQUEST、FORWARD、INCLUDE 和ERROR,如下所示:
<filter-mapping>
<filter-name>Hello</filter-name>
<url-pattern>/CH11/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
若<dispatcher>元素的值不为上述四种时,此web.xml 将会发生错误。
(2) 可检查如Servlet、Filter 或EJB-ref 等等元素的名称是否惟一。例如:
<servlet>
<servlet-name>ServletA</servlet-name>
<servlet-class>tw.com.javaworld.servlet.ServletA</servlet-class>
</servlet>
<servlet>
<servlet-name>ServletA</servlet-name>
<servlet-class>tw.com.javaworld.servlet.ServletB</servlet-class>
</servlet>
发表评论
-
[转]context-param和init-param区别
2007-11-19 09:19 2859context-param和init-param区 ... -
servlet的路径问题
2007-09-22 22:49 1582解决路径的原则:在地址栏中配出完整的路径就可以了 最好在web ... -
servlet的架构与生命周期
2007-09-22 20:26 1355servlet的架构与生命周期 -
如何掌握servlet
2007-09-21 01:18 1249至少掌握这么几点: 1.从HttpServlet继承 2.重写 ... -
ssession和servletContext的比较
2007-09-21 00:23 9200Servlet实现访问次数的例子 //ShowTimesS ... -
[摘]servletContext
2007-09-20 23:32 1546... -
学习session
2007-09-20 23:20 1096没有说都能记的这些方法,记住原理就ok了. 所以要会查api和 ... -
[摘]Session实现原理
2007-09-20 22:56 2429Session实现原理 http://blog. ... -
Cookie概述
2007-09-20 21:03 1381Cookie是服务器发送给浏览器的体 ... -
session学习1
2007-09-20 20:51 1051Provides a way to identify a us ... -
cookie学习
2007-09-20 20:14 12931) 创建Cookie: Cookie c = ... -
理清servlet的关系
2007-09-20 02:52 1160javax.servlet.servlet是个接口 java ... -
学servlet复习extends和implements的区别
2007-09-19 23:53 2201extends和implements的区别 本文摘抄 ... -
servlet的作用--我之理解
2007-09-19 23:08 3783早期用servlet充当视图层,业务逻辑层及持久层. p ... -
Tomcat运行servlet出现的问题.
2007-09-19 06:27 3011javax.servlet.ServletException: ... -
[摘]tomcat中运行servlet!
2007-09-19 05:25 1427虽然自己做过一些servlet 不过还是喜欢转发别人的文章可能 ... -
servlet的jar包
2007-09-19 04:49 3603在tomcat下的common目录下的lib目录有 对serv ... -
servlet的api
2007-09-19 04:35 1640servlet的文档不在java文档中,而在j2ee文档中,或 ... -
servlet学习笔记2-servlet中得到cookie的信息
2007-09-19 01:11 1586Servlet API 提供了一个Cookie 类,封装了 ... -
Servlet学习笔记1.3
2007-09-19 01:05 1189最好的方法是看下servlet的文档 ------------ ...
相关推荐
- **与Java Servlet 2.3规范的兼容性**:Servlet 2.4在2.3的基础上进行了一些改进和增强,如增加了`HttpSessionListener.sessionDestroyed`方法,以及`ServletRequest`中的新方法。 2. **Servlet接口** - **请求...
- Servlet-2.4 规范对 API 进行了扩展,增加了新的接口和类,提供了更多的编程模型和工具。 #### 三、重要概念与接口 - **Servlet**: 定义了 Web 应用程序中的服务器端组件,用于处理客户端的 HTTP 请求。 - **...
Servlet 2.4 是对Servlet 2.3版本的一个重要更新,虽然它没有引入革命性的新特性,但着重于增强已有功能的清晰度和互操作性。以下是Servlet 2.4中主要的变化和改进: 1. **HTTP/1.1和J2SE 1.3支持**: Servlet 2.4...
Servlet API 2.4引入了多项新功能和改进,以提高性能、可维护性和灵活性。 1. **Filter Chain**:Servlet API 2.4引入了过滤器(Filter)的概念,这是一种预处理或后处理请求和响应的方法。过滤器可以在请求到达...
Servlet 2.4 版本是 Servlet 技术发展的一个重要里程碑,它不仅增强了 Servlet 的基本功能,还引入了许多实用的新特性。这些改进大大提升了基于 Servlet 构建的 Web 应用程序的性能、灵活性和安全性。随着技术的不断...
Java Servlet 2.4 和 JSP 2.0 是Java Web开发中的两个...同时,随着技术的发展,Servlet 4.0和JSP 2.3已经发布,提供了更多新特性和优化,但理解Servlet 2.4和JSP 2.0仍然是理解和学习现代Web框架不可或缺的一部分。
Servlet 2.4规范是这个技术的一个里程碑,它在之前的版本基础上增加了许多新功能和改进,为开发人员提供了更多的灵活性和控制力。 首先,Servlet生命周期包括初始化、服务和销毁三个阶段。在初始化阶段,Servlet...
这个版本是2.4,是Servlet技术的一个经典版本,提供了稳定且广泛支持的功能。在本文中,我们将深入探讨Servlet API的关键概念、功能以及如何使用它来开发web应用。 1. **Servlet概述** Servlet是一个Java类,它...
1. **Filter**:Servlet 2.4引入了Filter的概念,允许开发者在请求到达目标Servlet之前或之后对其进行拦截和处理,实现如登录检查、内容编码转换等功能。 2. **Listener**:增强了事件监听器,如...
这个压缩包包含了Servlet-API的多个版本,分别是2.2、2.3、2.4、2.5以及3.0。每个版本的发布都带来了新的功能和改进,以适应不断发展的Web应用需求。 1. **Servlet 2.2**: - 发布于1999年,是Servlet规范的第二个...
Servlet 2.5是Java Servlet规范的一个版本,它在2006年发布,是对Servlet 2.4的升级,引入了一些新特性以提升Web应用的开发效率和灵活性。在这个源码包中,你将能够深入理解Servlet的工作原理以及如何在实际开发中...
Java Servlet 3.0是Servlet规范的一个重要版本,引入了许多新特性。例如,不再需要web.xml来配置Servlet,而是支持注解(@WebServlet)进行声明式配置。此外,它还支持异步处理,使得Servlet可以在不阻塞线程的情况...
#### 二、Servlet 2.4的新特性 **2.1 HTTP/1.1与J2SE 1.3支持** - Servlet 2.4版本要求Servlet必须支持HTTP/1.1协议,并且可以在J2SE 1.3环境中运行。 **2.2 ServletRequest增强** - **查询客户端连接**:`...
Servlet 2.5是Java Servlet规范的一个版本,它在2006年发布,是对Servlet 2.4的升级,提供了许多新特性和改进。这个版本的Servlet规范是基于Java EE 5平台的,旨在提高Web应用程序的开发效率和可维护性。下面将详细...
Servlet API 2.5与JSP API ...需要注意的是,尽管Servlet 2.5和JSP 2.1在许多现代项目中仍然适用,但随着技术的发展,更高版本的Servlet(如Servlet 4.0)和JSP(如JSP 2.3)已经发布,带来了更多的新功能和性能优化。
- **高效**: 通过轻量级线程模型,Servlet可以快速响应新的请求,且不需要为每次请求都加载新的实例。 - **方便**: 内置了许多实用工具方法,如解析HTML表单数据、操作HTTP头、处理Cookie和管理会话状态等。 - **...
Servlet2.4是Servlet规范的一个版本,提供了更多的API和功能,比如过滤器(Filter)和监听器(Listener),使得应用程序更加灵活和可扩展。 4. **JDK1.5**:即Java Development Kit的第5个版本,引入了泛型、枚举、...
3. **Servlet 2.4**:Servlet是Java EE规范的一部分,用于扩展服务器的功能,处理HTTP请求。Servlet 2.4版本引入了过滤器(Filter)和监听器(Listener)等特性,增强了对Web应用的控制和监控能力。在Struts中,...
- Servlet是Java平台的一部分,用于扩展Web服务器的功能。 - 它可以被视为一种轻量级的应用程序,能够高效地处理来自Web浏览器或其他HTTP客户端的请求。 - **Servlet的特点:** - 可移植性:Servlet基于Java语言...
1. **Apache 2.4**:Apache HTTP Server 2.4 版本是一个流行的开源 Web 服务器,提供了强大的功能和灵活性。它支持多种模块,如 `mod_rewrite`(URL 重写)和 `mod_security`(安全防护)。 2. **Tomcat 7**:...