javaweb——servlet容器

Genius_jx      2022-05-08     373

关键词:

要想了解什么是 Servlet 容器,我们得先了解什么的 Web 服务器。

一、Web 服务器

Web 服务器是使用 HTTP 协议来传输数据的,其中最简单的一种情况就是用会在 client 中输入一个 URL ,然后通过网页进行浏览,在网页中可以看到你编写的界面,因此,服务器的工作就是发送网页到客户端。

二、Servlet 容器

单单使用 Web 服务器的话,我们会发现用户和客户端只能向服务器请求静态的网页。如果说用户想根据自己的输入来读取网页的话就不能单单需要 Web 服务器来发送网页,这个时候我们就需要用到 Servlet 容器了,Servlet 容器的基本思想是在服务器端使用 Java 来动态生成网页。因此, Servlet 容器是 Web 服务器和 servlet 进行交互的必不可少的组件。

注意:Servlet 容器是用来装 Servlet 的。

三、什么是 Servlet ?

简单来说 Servlet 是在 java.servlet 包中的一个接口,这个接口声明了 servlet 生命周期中必不可少的三种方式 —— init()、service()、destroy()。每个servlet(无论是在SDK中定义的,或是自定义的)都必须实现这三个方法,而且由服务器在特定的时刻调用。我们来讲解一下
servlet 生命周期中必不可少的三种方式:

1> init() 方法主要传递了一个实现接口 javax.servlet.ServletConfig 的对象,一般在 Servlet 生命周起初始化阶段被调用,能够让 Servlet 从 Web application 中获得初始化参数。

2> service() 方法主要是判断请求类型,并把它转发给相应的方法处理, servlet 每接受一个请求,就会调用一次 sercice() 方法,并且每个请求的处理都会在独立的线程中进行。

3> destroy() 方法是当我们需要销毁 servlet 对象的时候,调用该方法来释放占用的资源。

和所有的Java程序一样,servlet运行在JVM中。引入servlet容器是为了处理复杂的HTTP请求。Servlet容器负责servlet的创建、执行和销毁。

四、JVM

JVM 就是 Java 虚拟机,只要使用 servlet 就要允许JVM为处理每个请求分配独立的Java线程,这也是Servlet容器主要的优势之一。每一个servlet都是一个拥有能响应HTTP请求的特定元素的Java类。Servlet容器的主要作用是将请求转发给相应的servlet进行处理,并在JVM处理完请求后,将动态生成的结果返回至正确的地址。在大多数情况下,servlet容器运行在独立的JVM中,但如果容器需要多个JVM,也有相应的解决方案。

servlet工作原理(读许令波《深入分析javaweb技术内幕》)笔记

在介绍servlet的工作原理之前首先我们要先了解一下与servlet配套的servlet容器,本文以tomcat为例1.Tomcat容器的基础知识Tomcat的容器是分级管理共分为四个等级从上之下为:container,engine,host,context。而直接管理servlet的容器是context容器... 查看详情

javaweb-servlet

 一 Servlet(ServerApplet)是JavaServlet的简称,是服务器小应用程序  1)用来完成B/S架构下,客户端请求的响应处理    2)平台独立,性能优良,能以线程方式运行  3)ServletAPI为Servlet提供了通用的编程接口  4)... 查看详情

javaweb02_servlet和web容器

JavaWeb02_servlet和web容器OSI参考模型应用层、表示层、会话层(TCP/IP:应用层——即程序,http层)传输层(TCP/IP:传输层——TCP/UDP协议)网络层(TCP/IP:网络层——IP,封装)数据链路层、物理层(TCP/IP:物理层——最底层,网络... 查看详情

javaweb--servlet部分笔记

1.集群:数万个服务器协同工作 2.web应用核心组件:jsp和servlet(属于门户),都在web容器中执行 3.web客户端发http请求(大的字符串)给web服务器;web服务器根据头信息来定义信息应该发给哪个web容器,  web容器将... 查看详情

javaweb应用

1.JavaWeb应用简介JavaWeb应用由一组Servlet/JSP、HTML文件、相关Java类,以及其他可以被绑定的资源构成,它可以在由各种供应商提供的符合Servlet规范的Servlet容器中运行。Servlet:标准Servlet接口的实现类,运行在服务器端,包含了被Ser... 查看详情

javaweb的一些总结(四:关于servlet)(代码片段)

servlet是干什么的?这部分内容较为底层,可能在使用spring框架后不一定要手写,但作为基础,有必要好好了解下。是sun公司开发的,目的是开发动态web具体使用时是:在API中为我们提供了一个接口(我们一般实现HTTPServlet接口)... 查看详情

javaweb知识点

1.WEB容器启动时解析WEB。XML装载并实例化所有配置了的SERVLET2.当针对某个SERVLET的第1次请求到来的时候,由容器调用init(ServletConfigsc)方法(由GericServlet实现),初始化此SERVLET的相关资源配置信息,比如<init-param>3.每次请求到来... 查看详情

javaweb-tomcat阀

前言Filter的功能之一就是预处理客户请求,而Tomcat阀是对Catalina容器接收到的HTTP请求进行预处理.过滤器实在Servlet规范中提出来的,因此适用于所有的Servlet容器,而Tomcat阀是Tomcat转悠的,不能用于Tomcat以外的其他Servlet容器.简介阀可以... 查看详情

javaweb

...求的是静态页面,则由Web服务器负责处理。如果请求的是JavaWeb组件(Servlet或者JSP),则移交给Web容器。Web容器可以在主       机的同一个进程、不同的进程或其他的Web服务主 查看详情

浅析servlet执行原理

在JavaWeb学习研究中,Servlet扮演重要的作用,学好它,是后续JavaWeb学习的良好基础。无论是SSH,还是SSM,微服务JavaWeb技术,都应先学好Servlet,从而达到事半功倍的效果,本篇将主要分析Servlet的运行原理。一UML下图为ServletUML关... 查看详情

javaweb工程servlet中@webservlet("/helloservlet")原理

编写好Servlet之后,接下来要告诉Web容器有关于这个Servlet的一些信息。在Servlet 3.0中,可以使用标注(Annotation)来告知容器哪些Servlet会提供服务以及额外信息。例如在HelloServlet.java中:@WebServlet("/hello.view")public class&nbs... 查看详情

javaweb

Servlet  是运行在Web服务器或应用服务器上的Java程序  在Web上创建动态内容的有效而强大的解决方案  由容器来管理生命周期与Web服务器交互  由Sun规范了其功能Servlet部署:  一个Servlet必须有三个名称:  1:是Servle... 查看详情

javaweb开发基础-servlet

概述  Servlet技术是对webserver的扩展,要理解这个,可能先了解一下什么是Webserver以及它的功能,特别是它的不足是非常有帮助的,可參考:点击打开链接。另外。Servlet也是一个用java语言的ServletAPI编写的特殊的java类。它... 查看详情

浅析servlet执行原理(代码片段)

   在JavaWeb学习研究中,Servlet扮演重要的作用,学好它,是后续JavaWeb学习的良好基础。无论是SSH,还是SSM,微服务JavaWeb技术,都应先学好Servlet,从而达到事半功倍的效果,本篇将主要分析Servlet的运行原理。一UML ... 查看详情

javaweb容器的启动过程

Javaweb容器的启动与处理请求的过程1.启动一个web项目的时候,web容器回去读取它的配置文件web.xml,读取<Context-param>结点。2.容器创建一个servletContext(Servlet上下文),这个web项目的所有部分都将共享这个上下文。3.容器将<cont... 查看详情

javaweb第一课

了解javawebJavaWeb应用由一组Servlet、HTML页、类、以及其他可以被绑定的资源构成。它可以在各种供应商提供的实现Servlet规范的Servlet容器中运行。JavaWeb包含如下内容:ServletJsp实用类静态文档如HTML、图片等描述Web应用的信息(web.xm... 查看详情

javaweb1

JavaWeb应用的核心技术是JavaServerPage和Servlet。此外,开发一个完整的JavaWeb应该涉及一下几种概念及技术。    1、Servlet组件    Servlet响应用户请求的过程:  2、JSP组件。  JSP容器初次执行JSP的过程: ... 查看详情

javaweb-codereview学习记录-1

Servlet是在JavaWeb容器上运行的小程序,通常我们用Servlet来处理一些较为复杂的服务器端的业务逻辑。值得注意的是在Servlet3.0之后(Tomcat7+)可以使用注解方式配置Servlet了。Servlet3.0之前的版本都需要在web.xml中配置,Servlet是两对标签... 查看详情