Servlet

来源:互联网 发布:淘宝全屏海报轮播 编辑:程序博客网 时间:2024/06/05 16:00

什么是Servlet

Servlet是JSP的前身。

Servlet是在服务器上运行的小程序。一个Servlet就是一个Java类,并且可以通过『请求 - 响应』编程模型来访问这个驻留在服务器内存里的Servlet程序。

为什么会出现JSP呢?

JSP与Servlet

早期的Servlet技术在编写代码时经常通篇性的写一大堆HTML标签、静态文本及文本格式等表现逻辑,其开发效率非常之低下。为了解决这种情况,便随之出现了JSP。

JSP是一种动态网页标准,其特点是在HTML代码中嵌入Java代码、JSP标签或用户标签来生成网页,静态部分(包括表现逻辑,如图片、文字等等)全用HTML语言来编写,只有需要动态生成的逻辑才由嵌入的Java代码来实现。

JSP其实是一种对Servlet的简化语言,所有的JSP页面最终都会被Servlet容器编译成Servlet类(其实就是Java类)。

Servlet容器?

Tomcat

Servlet容器,负责管理Servlet生命周期。

Web容器,负责管理和部署Web应用,其本身可能具备Servlet容器组件;如果没有,一般能将第三方Servlet容器作为组件整合进web容器。

Tomcat是Web容器也是Servlet容器。

在写完JSP代码后进行第一次执行时,Tomcat(Servlet容器)先将JSP代码翻译成Servlet类(Java代码),然后实例化该类,再调用该类的init、service、destory等进行生命周期服务。当客户端再进行第二次访问请求时,此时就没有Servlet容器的翻译这一步了,因为之前翻译的Java代码会一直保存,以便于后面的访问不再进行翻译,可大大提高访问效率。所以,JSP页面在第一次被访问时,其所花费的时间是最长的。

Servlet的生命周期

这里写图片描述

  1. 被始化阶段,调用init()方法。

  2. 响应客户请求阶段,调用service()方法。由service()方法根据提交方式选择执行doGet()或者doPost()方法。

  3. 终止阶段,调用destory()方法。

Tomcat装载Servlet的三种情况

(1). 首次向Servlet发送请求。
(2). Servlet类文件被更新后,重新装载Servlet。
(3). Servlet容器启动时自动装载某些Servlet。实现它只需要在web.xml文件中的之间添加如下代码:1,数字越小表示优先级别越高。

Servlet被装载后,Servlet容器创建一个Servlet实例并调用Servlet的init()方法进行初始化。在Servlet的整个生命周期内,init()方法只被调用一次。

Servlet与九大内置对象的对应关系

这里写图片描述

0 0