当前位置: 首页 > 网络应用技术

Servlet完整解决方案:继承关系,生命周期,容器和请求转发和重定向等。

时间:2023-03-08 19:12:05 网络应用技术

  1. servlet名称

  servlet =服务器 +小程序

  服务器:服务器小程序:小程序服务:服务器端的应用程序

  2.服务在Web应用程序中的作用

  ①生活中的例子

  ②与Web应用程序相对应

  ③具体细节

  Servlet扮演整个Web应用程序的角色。servlet主要负责处理请求和协调的调度函数。我们可以在Web应用程序中调用“控制器”

  1. Helloworld分析

  ①单击页面上的超链接,通过服务处理此请求,然后返回响应字符串:您好,我是服务!

  ②思考

  2.特定操作

  ①创建一个动态的Web模块“踏上PIT+Thunder New Edition2021.1创建配置Javaweb项目并在Tomcat容器中部署”

  ②创建前端页面超链接开始的代码。html如下:

  ③创建Helloservlet的Java类

  ④配置Hello服务配置文件位置:Web-Inf/web.xml

  ⑤测试

  ⑥摘要要求:您可以在浏览器上访问Java程序。

  3.串起概念

  ①本地tomcat

  ②想法中的tomcat实例

  ③想法中的网络工程

  ④根据网络工程生成的战争包

  ⑤网络工程资源[1]静态资源

  [2]动态资源

  ⑥访问资源地址[1]静态资源

  /Web应用程序名称/静态资源本身

  [2]动态资源

  /Web应用程序名称/虚拟路径

  WEB应用程序名称

  ⑧总体逻辑结构

  1.继承关系

  Javax.Servlet.Servlet接口-------> Javax.Servlet.Gnericservlet抽象-----> Javax.servlet.httpservlet抽象摘要子类

  2.相关方法

  ①Javax.Servlet.Servlet接口:

  ②javax.servlet.gnericservlet摘要类:

  ③javax.servlet.http.httpservlet抽象:

  在httpservlet摘要类中,DO方法几乎相同:

  3.摘要

  ①继承关系:httpservlet-> genericservlet-> servlet

  servlet中的核心方法:

  ③服务方法:当有请求时,服务方法将自动响应(实际上称为tomcat容器)。

  ④分析httpservlet中的请求:它是获取,发布,头部或删除等,然后确定哪个确实启动了。

  ⑤httpservlet中的DO方法默认为405的实现样式。子类需要实现相应的方法,否则将在默认情况下报告405错误。因此,当我们创建新服务时,我们需要考虑到请求方法到请求方法到确定哪种方法。

  1.生命周期

  从出生到死亡的过程是生命周期。与servlet中的三种方法相对应

  默认情况下:在第一次接收请求时,此服务将实例化(调用结构方法),初始化(调用),然后使用(呼叫)。从第二请求开始,每次是服务。容器已关闭,其中所有servlet实例将被摧毁并致电驱逐舰。

  servlet实例tomcat只会创建一个,所有请求都在此实例中进行响应。默认情况下,Tomcat将进行实例化,初始化,然后使用。这是什么优势是提高系统的启动速度,以及什么缺点是第一个请求需要很长时间。因此,结论是,如果需要改进系统的启动速度,那么当前的默认情况就足够了。如果需要响应速度,则应设置服务的初始化时间。

  2.初始化时间

  我们可以设置Servlet启动的顺序。数字越小,越高,最小值为0。当系统开始提高晚期响应速度时,可以实例初始化。

  修改Web.xml中的服务配置:

  3. servlet容器

  ①在开发和使用的各种技术中,容器中通常有许多对象。

  ②容器提供的功能容器将管理内部对象的整个生命周期。只能在容器中正常工作,并从容器中获得全面的支持。

  ③容器本身也是对象的特征1:通常是一个非常大的对象特征2:通常的单个情况

  ④典型的Servlet容器产品示例Tomcat,Jetty,Jboss,Weblogic,Websphere,Glassfish

  servlet在容器中:单个情况,线程不安全。

  单个示例:所有请求都是响应不安全线程的同一示例:一个线程需要根据本示例的变量值做出逻辑判断,但是在第一个线程的中间值中的一个时间已更改。

  注意:尽量不要定义服务中的成员变量。如果您必须定义成员变量,请不要走:①修改成员变量的值②根据成员变量的值来做出一些逻辑判断。

  4.摘要

  1. ServletConfig接口

  ①接口概述

  ②接口方法

  ③例如初始化参数

  ④经验

  ⑤比较Servlet标准与JDBC标准:扩展:Javax.Servlet软件包定义的一系列网络开发标准。遵循这套标准,不同的Servlet容器提供不同的实现。NarrowServlet:Javax.Servlet.Servlet.Servlet.Servlet.Servlet及其实施类界面,这是实际开发中使用的特定服务器。

  它还反映了面向接口的编程的想法,并且还反映了理解的想法:只要接口不变,下层方法中的任何变化都不会影响上层方法。

  2. ServletContext接口

  ①简介

  代表整个Web应用程序是一种情况。

  典型功能:

  ②经验[1]配置Web应用程序级别的初始化参数

  [2]获取参数

  1.继电器

  向Servlet发送请求,并将接力棒传递给Servlet。在大多数情况下,Servlet不能独自完成所有内容,我们需要继续通过继电器杆。目前,我们需要“转发”或“重定向”,我们需要要求。

  2.向前

  ①必不可少的:转移

  ②完整定义:在请求的处理过程中,Servlet完成了自己的任务,需要将请求转移到下一个Servlet才能继续处理。

  ③代码

  ④类似物

  键:由于转发操作的核心部分已在服务器端完成,因此浏览器没有感知。浏览器在整个过程中仅发送一次请求。

  3.重置

  ①本质:特别回应

  ②完整定义:在请求的处理过程中,Servlet完成了自己的任务,然后在响应中告诉浏览器:您需要访问下一个资源来完成此任务。“

  ③代码

  键:由于重定向操作的核心部分已在浏览器端完成,因此浏览器在整个过程中两次发送两个请求。

  4.比较

  5.应用程序方案

  可以简单地判断:那些可以首先重新发布的人,如果转发无法正常工作,然后使用重定向。

  您需要通过相同的请求对象将数据带入目标资源:只能使用转发。

  如果您想转到下一个资源,浏览器会刷新第二个资源:只能使用重定向。

  1.请求参数的概念

  浏览器由浏览器携带,以将请求发送到服务器。

  2.浏览器发送请求参数的基本形式

  3.服务器对请求参数的封装

  通常,服务器将请求参数封装为映射本质

  键:请求参数的名称值:请求参数值的数组

  4.如何获取请求参数

  5.测试

  ①html代码

  ②java代码

  原始:https://juejin.cn/post/71070999957219295262