Servlet概述

以下内容引用自http://wiki.jikexueyuan.com/project/servlet/overview.html

一、什么是Servlets?

Java Servlet是运行在Web或应用服务器上的程序,作为在来自Web浏览器或其他HTTP客户机的请求和在HTTP服务器上的数据库或应用程序的中间层。

使用Servlet,可以通过Web页面表单来收集用户的输入,显示从数据库或其他来源的记录,动态地创建Web页面。

Java Servlet通常服务于使用Common Gateway Interface(CGI)实现的同样的目的程序。但与CGI相比,Servlet具有几个优点。

  • 性能更好。

  • Servlet在Web服务器的地址空间内执行。没有必要创建一个单独的进程来处理每个客户端请求。

  • 由于Servlet是用Java编写的,所以它是跨平台的。

  • 在服务器上的Java安全性管理器执行的一些限制来保护服务器上的资源。所以Servlet是可信的。

  • Java类库的完整的功能是对Servlet来说是可用的。它可以与小应用程序、数据库或其他软件通过通信接口和RMI机制进行通信。

二、Servlets架构

下图显示了在Web应用程序中Servlets的位置。

三、Servlets任务

Servlet执行以下主要任务:

  • 读取由客户端(浏览器)发送的显式数据。这包括网页上的HTML表单,或者也可以是来自applet或自定义的HTTP客户端程序的表单。

  • 读取由客户端(浏览器)发送的隐式HTTP请求数据。这包括Cookies、媒体类型和浏览器能理解的压缩格式等等。

  • 处理数据并生成结果。这个过程可能需要访问数据库,执行RMI或CORBA调用,调用Web服务,或者直接计算响应。

  • 发送显式数据(即文档)到客户端(浏览器)。该文档可以以多种多样的格式被发送,包括文本文件(HTML或XML)、二进制文件(GIF图像)、Excel等。

  • 发送隐式的HTTP响应到客户端(浏览器)。这包括告诉浏览器或其他客户端被返回的文档类型(例如HTML),设置Cookies和缓存参数,以及其他类似的任务。

四、Servlets包

Java Servlet是运行在Web服务器上的Java类,在Web服务器上有一个支持Java Servlet规范的解释器。

Servlet可以使用javax.servlet和javax.servlet.http包来创建。它们是Java企业版的一个标准部分,也是支持大型开发项目的Java类库的扩展版。

这些类实现了Java Servlet和JSP规范。教程使用的版本分别是Java Servlet 2.5和JSP 2.5。

就像任何其他Java类一样,Java Servlet可以创建和编译。在安装Servlet包,并将它们添加到电脑的Classpath中之后,可以使用JDK的Java编译器或其他任何当前编译器来编译Servlet(POM和Eclipse项目忽略这步)。

posted @ 2017-06-09 18:06  EasonJim  阅读(256)  评论(0编辑  收藏  举报