Servlet概念(2)

Servlet是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。 它担当客户请求与服务器响应的中间层。

Servlet是位于Web 服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载。

Servlet 接口的方法(Servlet 的生命周期)

(1) 加载和实例化

Servlet 容器装载和实例化一个 Servlet。创建出该 Servlet 类的一个实例。

(2) 初始化       void init(ServletConfig config)

在 Servlet 实例化完成之后,容器负责调用该 Servlet 实例的 init() 方法,在处理用户请求之前,来做一些额外的初始化工作。

(3) 处理请求     void service(ServletRequest req,ServletResPonse res)

由 Servlet 容器调用,运行与请求对应的 Servlet 实例的 service() 方法,service() 方法再派遣运行与请求相对应的 doXX(doGet,doPost)

(4) 销毁         void destroy()

当 Servlet 容器决定将一个 Servlet 从服务器中移除时 ( 如 Servlet 文件被更新 ),便调用该 Servlet 实例的 destroy() 方法.

其中,(1)(2)(4) 在 Servlet 的整个生命周期中只会被执行一次。

Servlet 接口中还有:(ServletConfig与ServletContext的区别)

ServletConfig getServletConfig()方法返回一个ServletConfig对象(是init()的参数),该对象中包含servlet启动配置信息.这个信息中包括了所有初始化参数和一个ServletContext对象.

注:getServletContext()返回一个ServletContext对象,该对象包含关于servlet运行环境的信息.

String getServletInfo() : 返回有关Servlet的信息

JSP的本质即使一个Servlet:

当浏览器向服务器请求 JSP 页面时,服务器收到该请求后,首先检查所请求的这个JSP 文件内容是否已经被更新,或者是否是 JSP 创建后的第一次被访问,如果是,那么,这个 JSP 文件就会在服务器端的 JSP 引擎作用下转化为一个 Servlet 类的 Java 源代码文件。紧接着,这个 Servlet 类会在 Java 编译器的作用下被编译成一个字节码文件,并装载到 jvm 解释执行。剩下的就等同于 Servlet 的处理过程了。

如果被请求的 JSP 文件内容没有被修改,那么由服务器检索出与之对应的 Servlet 实例来处理。

注:就 Tomcat 而言,打开目录 %Tomcat%/work/%您的工程文件目录%,然后会看到里面有 3个子目录:org/apache/jsp,若没有这 3 个目录,说明项目的 JSP 文件还没有被访问过,打开进到 jsp 目录下,会看到一些 *_jsp.java 和 *_jsp.class 文件,这就是 JSP 文件被转换成Servlet 类的源文件和字节码文件了。

下面为 jsp 与 Servlet 工作流程图:

时间: 2024-11-04 00:40:26

Servlet概念(2)的相关文章

Servlet概念

Servlet概念 Servlet是javaWeb的三大组件之一,其他的两种分别是Filter(拦截器),Listener(观察者模式).我们的一个web项目需要部署在web服务器(例如tomcat)上,才能够接收浏览器等客户端的请求.服务器接收到请求之后,实际上是由Servlet组件来进行具体的业务逻辑处理,然后再对客户端进行响应.一个web项目中通常会有多个Servlet组件来处理不同的请求.例如在开发一个管理系统时,用户在进行登录的时候,服务器上将调用登录的Servlet来进行登录逻辑处理

DNS,TCP,IP,HTTP,socket,Servlet概念整理

概念整理 常见的协议虽然很容易理解,但是看了之后过一段时间不看还是容易忘,笔记如下,比较零碎,勉强供各位复习.如有错误欢迎指正. DNS协议 DNS 协议的作用是将域名解析为IP,域名的数量非常多,域名和ip的对应关系也经常变化,所以就需要专门的DNS服务器,用来将域名解析为IP. windows下,nslookup命令可以查看域名解析的结果.nslookup +网址. 世界各地有很多DNS服务器,也有一些大型公用的DNS服务器可以使用,比如Google的8.8.8.8和国内的114.114.1

Servlet学习之Servlet概念与运行流程

Servlet介绍与使用 什么是服务器: Servlet的概念: Servlet的特点: Servlet的使用: web.xml参数配置: 问题: 服务器在接收到浏览器的请求后,会自动调用对应的逻辑代码进行请求处理.但是逻辑代码是由程序员编写并放到服务器中,那么服务器怎么知道该怎么调用并调用哪个类和哪个方法来进行请求处理. 解决: 程序员在编写代码的时候如果能够按照服务器能够识别的规则进行编写, 浏览器按照指定的规则进行发送请求,那么服务器就可以调用并执行响应的逻辑代码进行请求处理了. 什么是服

Servlet概念理解

这是第一次接触Servlet,将一些资料整理了一下,方便理解与记忆: Servlet(Server Applet),全称Java Servlet,是用Java编写的服务器端程序. servlet的命名可以看出sun命名的特点,如Applet=Application+let,表示小应用程序:Scriptlet=Script+let,表示小脚本程序:同样Servlet=Server+let,表示小服务程序.   主要功能:交互式地浏览和修改数据,生成动态Web内容. Servlet运行于支持Java

Servlet概念入门

什么是Servlet Servlet 为创建基于 web 的应用程序提供了基于组件.独立于平台的方法,可以不受 CGI 程序的性能限制.Servlet 有权限访问所有的 Java API,包括访问企业级数据库的 JDBC API. Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层. 使用 Servlet,您可以收集来自网页表单的用户输入,呈现来自数据库或者其他源的

Servlet概念及配置

Servlet 简介: servlet就是sun公司开发动态web的一门技术 Sun在这些API中提供一个接口叫做:Servlet,如果逆向开发一个Servlet程序,只需要完成两个小步骤: 1.编写一个类,实现servlet接口 2.把开发好的Java类部署到web服务器中 把实现了Servlet接口的Java程序叫做Servlet HolleServlet Servlet接口 sun公司有两个默认的实现类:HttpServlet,GenericServlet 构建一个普通的maven项目,删

servlet

servlet学习大纲: 1.servlet概念及相关接口简介 2.servlet执行过程 3.servlet路径映射 4.缺省servlet 应用 5.servlet生命周期(重点) 6.servlet自动加载 7.servlet线程安全 8.servletConfig对象 9.servlet相关接口详解 10.servletContext对象 知识点 1.如何开发一个servlet 1.1步骤: 1.编写一个java类,继承httpservlet 2.重写doget/dopost方法 3.s

Servlet入门总结及第一个Servlet程序 (转载)

转载请注明出处http://blog.csdn.net/evankaka 一了解Servlet的概念 二Servlet技术功能 三 Servlet技术特点 四 Servlet生命周期 五servlet工作过程 六 Servlet与JSP区别 七Servlet代码结构 八 Servlet第一个程序 一.了解servlet 概念 Servlet定义:Servlet是基于Java技术的Web组件,由容器管理并产生动态的内容.Servlet引擎作为WEB服务器的扩展提供支持Servlet的功能.Serv

Java Web servlet理解

一.有两种应用程序 1.桌面应用程序:需要下载,安装,更新等.如QQ,office等 2.web应用程序:就是我们开发的web项目,这不需要用户下载,只需要用户客户端联网,访问相应的互联网资源. 二.Http协议 HTTP是一个属于应用层的面向对象的超文本传输协议,基于TCP/IP协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统.HTTP特点: (1)无连接:分为4个阶段:建立连接.发送请求.等待响应.关闭连接 优点:快速.简单.不占用网络服务器资源 缺点:速度由网络来决定,每次传输数据