第1章 概述
1.1 Servlet是什么?
Servlet是一项基于web组件,由容器管理,生成动态内容的Java技术。和其他基于组件的Java技术类似,servlet是些平台无关的Java类,被编译成平台无关的字节码,由支持Java的web服务器动态加载并运行。容器,有时称为servlet引擎,是提供servlet功能的web服务器扩展。Servlet通过servlet容器实现的请求/响应形式来与web客户端交互。
1.2 Servlet容器是什么?
Servlet容器是web服务器或应用服务器的一部分,提供发送请求和响应的网络服务,对基于MIME的请求编码,并且格式化基于MIME的响应。Servlet容器还通过servlet的生命周期对它们容纳和管理。
Servlet可以构建于本地web服务器内,或者通过服务器的本地扩展API以附加组件形式安装到Web服务器。Servlet容器还可以构建于或者可能安装在支持web的应用服务器内。
所有servlet容器必须支持HTTP作为请求和响应的协议,但是基于HTTPS(SSL上的HTTP)协议的附加请求/响应可以选择支持。容器必须实现的HTTP规范最低版本是HTTP/1.0。强烈建议容器同时要实现HTTP/1.1规范。
Servlet容器可以在servlet执行的环境中设置安全限制。在Java2平台,J2SE1.2或者J2EE1.3环境,这些限制应当使用Java2平台定义的许可体系来设置。比如,高端应用服务器可以限制Thread对象的创建,以确保容器的其他组件不会被拒绝嵌入。
J2SE1.2是构建servlet容器的底层Java平台的最低版本。
1.3 一个例子
下列是一个典型的事件序列:
1. 客户端(也就是web浏览器)访问web服务器,发出HTTP请求。
2. 请求由web服务器接收,转给servlet容器。Servlet容器可以和本地web服务器运行于相同的进程内,相同主机的不同进程,或者和处理请求的web服务器不同的主机。
3. Servlet容器根据servlet的配置决定调用哪一个servlet,然后使用表示请求和响应的对象来调用。
4. Servlet使用request对象来找出远程用户是谁,可能作为请求一部分发送的HTTP POST参数以及其他相关数据是什么。无论被编程为什么样的逻辑,都由servlet执行,然后生成数据发送回客户端。它通过response对象把数据发送回客户端。
5. 一旦servlet已经完成了请求处理,servlet容器确保响应被适当刷新,然后将控制返回给本地web服务器。
1.4 比较Servlet和其他技术
在功能方面,servlet介于CGI(Common Gateway Interface)程序和专有服务器扩展比如NSAPI(Netscape Server API)或Apache模块之间。
Servlet相比其他服务器扩展机制有以下优点:
• 它们通常要比CGI脚本更快,因为使用一个不同的进程模块。
• 它们使用很多web服务器支持的标准API。
• 它们具有Java编程语言的所有优点,包括容易开发和平台无关。
• 它们可以访问Java平台可用的大量的API。
1.5 与J2EE的关系
Servlet API 2.3是J2EE1.31必需的API。部署它们的servlet容器和servlet必须满足J2EE规范中描述的其他需求,以在J2EE环境中执行。
1. 请参见J2EE规范(http://java.sun.com/j2ee/)。
分享到:
相关推荐
2.3 JSP的基础——Servlet 技术 5 2.4 JavaBeans技术 6 第三章 需求及总体设计 7 3.1系统需求分析 7 3.1.1系统的开发环境 7 3.1.2 系统的开发语言 7 3.1.3 系统的数据库 7 3.2系统总体功能结构设计 8 3.3实体联系图 ...
2.2 J2EE规范概述 J2EE规范包括Web层、业务逻辑层和数据访问层,其中Web层由Servlet和JSP负责处理用户请求;业务逻辑层则由JavaBean和EJB组件实现,处理业务逻辑和数据操作;数据访问层则通过JDBC与数据库进行交互。...
- **6.2.2 实例——Servlet版本HelloWorld**:通过创建一个简单的 HelloWorld 示例来演示如何使用 Servlet 处理请求。 #### 第7章 数据操作 在这一章中,将介绍如何在 Google App Engine 上进行数据操作: ##### ...
JSTL可以在支持JSP1.2和Servlet2.3规范的容器上运行,例如Tomcat 4.x。随着技术的进步,在JSP 2.0规范中,JSTL成为了标准组件之一。JSTL包括两大部分:标签库和EL(Expression Language,表达式语言)。标签库涵盖了...
Servlet过滤器的概念首次出现在Java Servlet规范2.3版中,它为开发者提供了一种灵活的方式来处理各种请求前后的任务。 #### 过滤器的功能 Servlet过滤器的主要功能包括但不限于: - 在Servlet被调用之前检查`...
最初,它只能运行在支持JSP 1.2和Servlet 2.3规范的容器之上,比如Tomcat 4.x。不过,在后续发布的JSP 2.0规范中,JSTL已被视为标准的一部分。 #### JSTL的核心组成部分 JSTL主要由两大部分组成: 1. **标签库**...
第1篇 开发工具及框架概述 第1章 开发前奏 1.1 java web应用概述 1.2 配置开发环境 1.3 基础技术简单简介 1.4 核心框架初步认识 1.5 小结 第2章 myedipse开发工具对各种框架的支持 2.1 ...
不过,JSTL 1.0的参考实现可以从Apache Jakarta Taglibs项目中获取,并且可以部署在任何支持JSP 1.2和Servlet 2.3规范的服务器上。 #### 八、表达式语言(EL) 在JSP 1.2中引入了一个新的概念——表达式语言(EL)...
主要包括Java Web开发环境、JSP语法、JSP内置对象、Java Bean技术、Servlet技术、EL与JSTL标签库、数据库应用开发、初识Struts2基础、揭密Struts2高级技术、Hib锄劬e技术入门、Hibernate高级应用、Spring核心之IoC、...
- **声明与映射**:作为任何 Servlet,DispatcherServlet 需要根据 Servlet 规范进行声明和映射,这可以通过 Java 配置或在 `web.xml` 文件中完成。 - **使用 Spring 配置**:DispatcherServlet 使用 Spring 配置来...
- **Servlet概述**:Servlet是一种Java Web技术,它允许开发者创建高性能的、可扩展的Web应用程序。Servlet本身是一个Java类,可以在服务器端接收和响应客户端发送的HTTP请求。 - **Servlet的优点**:Servlet具有...
#### 一、OSCache概述及特点 **OSCache**是由**OpenSymphony**设计的一种创新的JSP自定义标签库,主要用于实现现有JSP页面内部的快速内存缓存功能。作为一种广泛应用且高性能的J2EE缓存框架,OSCache能够应用于任何...
Apache Tomcat是一款广泛应用的开源Java Servlet容器,它实现了Java EE Web应用程序规范,特别是Servlet和JavaServer Pages(JSP)。在本文中,我们将深入探讨Apache Tomcat 9.0.37这一版本,以及它作为开发工具的...
- **Servlet**: Servlet是Java Web应用程序的重要组件之一,主要负责接收来自客户端的请求,并处理这些请求后生成响应。Servlet能够访问业务逻辑层,执行业务逻辑,并将处理结果以值对象的形式转发给JSP页面。 - **...