Java Web3-2 - tomcat

https://github.com/heibaiying/Full-Stack-Notes/blob/master/notes/Tomcat_架构解析.md

https://zhuanlan.zhihu.com/p/40249834

早期,web技术主要用于浏览静态页面

时间发展,用户已经不满足于仅浏览静态页面。用户需要一些交互操作,获取一些动态结果。如果基于HTTP协议实现服务器端软件增强功能太过 复杂,所以需要一些扩展机制来实现用户想要的功能。

早期使用的Web服务器扩展机制是CGI(Common Gateway Interface,公共网关接口)

CGI程序在一定程度上解决了用户需求。不过还存在一些不足之处,如CGI程序编写困难,响应时间较长,以进程方式运行导致性能受限。

1997年,sun公司推出了Servlet技术,作为java阵营的CGI解决方案

Servlet

Java Servlet(Java服务器小程序)是一个基于Java技术的Web组件,运行在服务器端,它由Servlet容器所管理,用于生成动态的内容。 Servlet是平台独立的Java类,编写一个Servlet,实际上就是按照Servlet规范编写一个Java类。Servlet被编译为平台独立 的字节码,可以被动态地加载到支持Java技术的Web服务器中运行

Servlet容器

Servlet容器 = Servlet引擎,是Web服务器或应用程序服务器的一部分,用于在发送的请求和响应之上提供网络服务,解码基于 MIME的请求,格式化基于MIME的响应。

Servlet没有main方法,不能独立运行,它必须被部署到Servlet容器中,由容器来实例化和调用 Servlet的方法( 如doGet() doPost() ),Servlet容器在Servlet的生命周期内包容和管理Servlet。在JSP技术 推出后,管理和运行Servlet/JSP的容器也称为Web容器

tomcat

Tomcat是一个免费的开放源代码的Servlet容器。

Tomcat服务器接受客户请求并做出响应的过程如下,与上图类似:

1)客户端(通常都是浏览器)访问Web服务器,发送HTTP请求。

2)Web服务器接收到请求后,传递给Servlet容器。

3)Servlet容器加载Servlet,产生Servlet实例后,向其传递表示请求和响应的对象。

4)Servlet实例使用请求对象得到客户端的请求信息,然后进行相应的处理。

5)Servlet实例将处理结果通过响应对象发送回客户端,容器负责确保响应正确送出,同时将控制返回给Web服务器。

Tomcat的配置

相关推荐
星释几秒前
Rust 练习册 :Rail Fence Cipher与栅栏密码
开发语言·算法·rust
weixin_4414552617 分钟前
说说Java有哪些集合类
java·开发语言
合作小小程序员小小店24 分钟前
web网页开发,在线%台球俱乐部管理%系统,基于Idea,html,css,jQuery,jsp,java,ssm,mysql。
java·前端·jdk·intellij-idea·jquery·web
李趣趣24 分钟前
C#中关于ContextMenuStrip批量添加Item的问题
开发语言·c#
张人玉28 分钟前
C# 串口通讯中 SerialPort 类的关键参数和使用方法
开发语言·c#·串口通讯
白山云北诗39 分钟前
网站被攻击了怎么办?如何进行DDoS防御?
开发语言·网络安全·php·ddos·防ddos·防cc
程序定小飞1 小时前
基于springboot的作业管理系统设计与实现
java·开发语言·spring boot·后端·spring
Jonathan Star1 小时前
NestJS 是基于 Node.js 的渐进式后端框架,核心特点包括 **依赖注入、模块化架构、装饰器驱动、TypeScript 优先、与主流工具集成** 等
开发语言·javascript·node.js
晓庆的故事簿1 小时前
windows下载和使用minio,结合java和vue上传文件
java·开发语言
程序员小假1 小时前
我们来说一下 Mybatis 的缓存机制
java·后端