tomcat处理Http请求流程的步骤

假设来我们在浏览器上输入: http://localhost:8080/my-web-mave/index.jsp ;在tomcat中是如何处理这个请求流程的:
1: 我们的请求被发送到本机端口8080,被在那里侦听的Coyote HTTP/1.1 Connector获得。

2: Connector把该请求交给它所在的Service的Engine来处理,并等待来自Engine的回应 。

3: Engine获得请求localhost/my-web-maven/index.jsp,匹配它所拥有的所有虚拟主机Host ,我们的虚拟主机在server.xml中默认配置的就是localhost。

4: Engine匹配到name=localhost的Host(即使匹配不到也把请求交给该Host处理,因为该Host被定义为该Engine的默认主机)。

5: localhost Host获得请求/my-web-maven/index.jsp,匹配它所拥有的所有Context。

6: Host匹配到路径为/my-web-maven的Context(如果匹配不到就把该请求交给路径名为”"的Context去处理)。

7: path=”/my-web-maven”的Context获得请求/index.jsp,在它的mapping table中寻找对应的servlet 。

8: Context匹配到URL PATTERN为*.jsp的servlet,对应于JspServlet类。

9: 构造HttpServletRequest对象和HttpServletResponse对象,作为参数调用JspServlet的doGet或doPost方法 。

10: Context把执行完了之后的HttpServletResponse对象返回给Host 。

11: Host把HttpServletResponse对象返回给Engine 。

12: Engine把HttpServletResponse对象返回给Connector 。

13: Connector把HttpServletResponse对象返回给客户browser 。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/804542.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ble的认证与授权

在BLE(Bluetooth Low Energy)中,认证(Authentication)和授权(Authorization)是确保设备间安全通信的重要概念。这两个过程通常是相互关联的,但它们的具体实现和需求可能会根据应用场景和安全要求而有所不同。 认证(Authentication) 认证是指在设备之间建立信任关系…

IP爆发出蓬勃生命力,泡泡玛特2023营收过亿IP达到10个

“原来我们是基于潮流在事情,后来是基于流行,然后我们现在想去做一个更大的圈,我们想基于快乐。”在2023年9月的一场采访中,泡泡玛特CEO王宁如是说。半年后,泡泡玛特交出了一份还不错的成绩单。近期,泡泡玛…

[StartingPoint][Tier1]Crocodile

Task 1 What Nmap scanning switch employs the use of default scripts during a scan? (哪些 Nmap 扫描开关在扫描期间使用默认脚本?) -sC Task 2 What service version is found to be running on port 21? 发现端口 21 上运行的服务版本是什么&#xff1f…

DEVOPS详解

一、简介 DevOps一词是由英文 Development(开发)和 Operations(运维)组合而成,但它所代表的理念和实践要比单独或组合的两个词广阔的多。DevOps 涵盖了开发、测试、安全、协作方式、数据分析、运维等许多方面。传统的开…

w1r3s 靶机学习

w1r3s 靶机学习 0x01 IP C for command kali ip 10.10.10.128victim ip 10.10.10.1290x02 开扫 C sudo nmap -sn 10.10.10.0/24-sn 多一步入侵和轻量级侦察 发送四项请求 -sL 列表扫描,多用于探测可用ip,广播扫描 –send-ip 时间戳请求&#xff0…

分贝和功率相关的概念

对于刚接触分贝 (dB) 的人来说,分贝 (dB) 的概念很困难且令人困惑,因为射频中经常涉及增益、功率、电压,再加上dB、dBm、dBW、瓦特、毫瓦等名词,且通常需要在线性值和分贝值之间来回转换,所以需要耐心地梳理他们之间的…

libcurl上手笔记-HTTP方法 GET、POST、PUT、DELETE

GET GET方法比较简单,使用一条语句设置即可。 curl_easy_setopt(curl, CURLOPT_HTTPGET, 1L); POST {//方法1 /*使用CURLOPT_POST时,会将方法设置成POST,但是默认还需要从stdin读取提交的内容 * 所以需要用CURLOPT_POSTFIELDSIZE显试设置不…

常见性能测试工具对比

在性能测试工作中,我们常常会遇到好几个工具,但是每一个工具都有自己的优势,一时间不知道怎么选择。 今天我们就将性能测试常用的工具进行对比,这样大家在选择工具的时候心里就有底啦! 阿里云PTS 性能测试PTS&#xff…

【群智能算法改进】一种改进的鹦鹉优化算法 改进鹦鹉优化器 IPO算法【Matlab代码#73】

文章目录 【获取资源请见文章第5节:资源获取】1. 原始鹦鹉优化算法PO2. 改进后的IPO算法2.1 自适应切换因子2.2 混合柯西和高斯变异 3. 部分代码展示4. 仿真结果展示5. 资源获取 【获取资源请见文章第5节:资源获取】 1. 原始鹦鹉优化算法PO 鹦鹉优化算法…

互联网人才现状分析

作者:哈哥撩编程(视频号、抖音、公众号同名) 新星计划全栈领域优秀创作者博客专家全国博客之星第四名超级个体COC上海社区主理人特约讲师谷歌亚马逊演讲嘉宾科技博主极星会首批签约作者 🏆 推荐专栏: 🏅…

C#操作MySQL从入门到精通(6)——对查询数据进行排序

前言 在和MySql数据库交互的过程中,查询数据是使用最频繁的操作,并且我们经常需要对查询到的数据进行排序后输出,比如我想查询1列数据的最小值,那么我可以将查询到的数据进行升序(从小到大)排列,然后取第一个数据就是最小值。本文详细介绍了对查询数据进行排序的各种操…

数学建模-最优包衣厚度终点判别法-二(K-Means聚类)

💞💞 前言 hello hello~ ,这里是viperrrrrrr~💖💖 ,欢迎大家点赞🥳🥳关注💥💥收藏🌹🌹🌹 💥个人主页&#xff…

【ZZULIOJ】1052: 数列求和4(Java)

目录 题目描述 输入 输出 样例输入 Copy 样例输出 Copy code 题目描述 输入n和a,求aaaaaa…aa…a(n个a),如当n3,a2时,222222的结果为246 输入 包含两个整数,n和a,含义如上述,你可以假定n和a都是小于10的非负整…

OpenLCA案例分析:环境影响与碳排放生命周期评估应用、GREET下载与安装、生物质能源的碳排放

目录 第一章 生命周期评价的理论基础 第二章 OpenLCA的安装使用及生命周期评估模型构建 第三章 GREET的介绍 第四章 生物质能源的碳排放 更多应用 生命周期分析是一种分析工具,它可帮助人们进行有关如何改变产品或如何设计替代产品方面的环境决策,即…

./build/examples/openpose/openpose.bin在windows中调用(步骤非常简单)

下载openpose:https://github.com/CMU-Perceptual-Computing-Lab/openpose/releases 打开进入models 这里面还缺几个模型 打开一个github项目:https://github.com/ihp-lab/OpenSense/blob/fefe13ccf250e4811f4f61edf0b212e4ded78d19/Interoperations/O…

【cocos creator】【编辑器插件】cocos creator文件复制时,解决cocos creator uuid冲突

!!!修改前先备份 1、将文件夹放在packages文件夹下 2、打开项目,选择要刷新uuid的文件夹 3、菜单栏点击 扩展->refresh-uuid 4、等控制台提示:资源uuid刷新完成,重启项目(!&#…

算法概述(一)

一、算法 在计算机领域里,算法是一系列程序指令,用于处理特定的运算和逻辑问题。 二、衡量算法的好坏重要标准 1、时间复杂度 2、空间复杂度 三、算法应用场景 1、运算 如:超大整数求积 2、查找 如:在度娘,谷歌上搜索…

小程序变更主体流程是怎样的?

小程序迁移变更主体有什么作用?“小程序主体变更”是指小程序账号开发者将其小程序项下业务交由其他开发者承接、运营和服务。主体变更完成后,小程序的运营权限、主体信息将发生变化。小程序迁移变更主体的条件有哪些?1、境外小程序不支持小程…

4.9QT

完善对话框,点击登录对话框,如果账号和密码匹配,则弹出信息对话框,给出提示”登录成功“,提供一个Ok按钮,用户点击Ok后,关闭登录界面,跳转到其他界面 如果账号和密码不匹配&#xf…

Houdini笔记操作技巧_集锦

个人记录下,谨防遗忘。同时丰富下Hou的中文搜素环境。 1、自定义启动界面 ① 设置完界面后,保存自定义界面(Save Current Desktop As...) ② Edit-->Preferences-->General UIInterface-->Startup in Desktop&#xff1…