当Web刚开始被用来传送服务时,服务提供者就已经意识到了动态内容的需要。Applet是为了实现这个目标的一种最早的尝试,它主要关注使用客户端平台来交付动态用户体验。与此同时,开发人员也在研究如何使用服务器平台实现这个目标。开始的时候,公共网关接口(Common Gateway Interface ,CGI)脚本是生成动态内容的主要技术。虽然使用得非常广泛,但CGI脚本技术有很多的缺陷,这包括平台相关性和缺乏可扩展性。为了避免这些局限性,Java Servlet技术应运而生。它能够以一种可移植的方法来提供动态的、面向用户的内容,处理用户请求。

一个servlet就是Java编程语言中的一个类,它被用来扩展服务器的性能,服务器上驻留着可以通过“请求-响应”编程模型来访问的应用程序。虽然servlet可以对任何类型的请求产生响应,但通常只用来扩展Web服务器的应用程序。Java Servlet技术为这些应用程序定义了一个特定于HTTP的 servlet类。

javax.servlet和javax.servlet.http包为编写servlet提供了接口和类。所有的servlet都必须实现Servlet接口,该接口定义了生命周期方法。

当实现一个通用的服务时,您可以使用或扩展由Java Servlet API提供的GenericServlet类。HttpServlet类提供了一些方法,诸如doGet和doPost,以用于处理特定于HTTP的服务。

Servlet的生命周期

编辑

一个servlet的生命周期由部署servlet的容器来控制。当一个请求映射到一个servlet时,该容器执行下列步骤。

1. 如果一个servlet的实例并不存在,Web容器

a. 加载servlet类。 b. 创建一个servlet类的实例。c. 调用init初始化servlet实例。该初始化过程将在初始化servlet中讲述。 2. 调用service方法,传递一个请求和响应对象。服务方法将在编写服务方法中讲述。

如果该容器要移除这个servlet,可调用servlet的destroy方法来结束该servlet。结束过程将在结束Serlvet中讨论。

处理Servlet生命周期事件

servlet的生命周期中,用户可以通过定义监听器对象对事件进行检测和产生反应。当生命周期事件发生时,调用该对象的方法。要使用这些监听器对象,用户必须定义监听器类,并且指定相应的监听器类。

定义监听器类 您可以将监听器类定义为一个listener接口的实现。Servlet生命周期事件列出了可以检测的事件和相应的必须实现的接口。当调用一个监听器方法时,需向该方法传递一个包含事件适当信息的事件。例如,向HttpSessionListener接口中的方法传递的是一个HttpSessionEvent事件,这个事件包含了一个HttpSession。

 Java Servlet技术_第1张图片

创悦(深圳)投资管理有限公司

为成长喝彩

微信:CreajoyYOJOY

微博:http://weibo.com/CreajoyYOJOY

官网:http://www.creajoyvc.com/

联系&投稿:[email protected]

Java Servlet技术_第2张图片