• 欢迎光临~

学习tomcat源码知识

开发技术 开发技术 2022-07-21 次浏览

下面是我自己学习的笔记,其他人看不懂就不要看了

特别注明 :我之前的公司的人不能看,包括:刘天龙、冉大亮、刘珅、从立。

1.miniBrown是模拟浏览器,会发送http
2.BootStrap是创建了一个SocketServer
3.request类,里面包括socket、url、输入流
4.response类,里面包括返回流、类型比如text/html
5.const类,里面有各种常量
6.文本文件,这是一个功能。找到文件,并输出String给response
7.日志,这是一个功能。没什么意思,不用看
8.耗时任务,这是一个功能。没什么意思,不用看
9.线程池,这是一个功能。没什么意思,不用看
10.多应用,Context 类,每一个context对象就表示是一个应用
里面有path和docBase;除了root文件夹,其他的path和docBase是一样的
并保存在contextMap缓存里
改造request类,request类里面有一个context,因为每个请求都会对应一个应用中的什么资源
11. 配置型多应用,一般来说不需要这个。
12.tomcat的内置对象有哪些
Server, Service, Engine, Host, Connector
1个host表示主机,对应一个ContextMap,ContextMap就是应用的缓存。 即1个主机,可以部署多个应用
1个request对应一个context应用,对应一个host主机
engine不需要学习。1个engine对应多个host
service不需要学习。1个service对应多个engine
server不需要学习。1个server对应多个service
13.404页面的含义。当找不到对应的文件
14.500页面的含义。出错了
15.mimetype。就是一个文件后缀格式的映射,输出到resonse的contextType字段上
16.二进制文件。这是一个功能。不需要学习
17.connector。就是说对外开放多个端口的意思
18.httpprocessor
19.HelloServlet。就是一个普通的servlet类。输入是request和response
20.配置servlet。读取每一个context中的web.xml,将里面的类解析出来加载到context的list缓存中
21.invokeServlet。用于处理servlet。根据url获得servlet类,反射获得类并执行service方法
22.defaultServlet。用于处理文本请求。如果根据url可以找到类,那么就用invokeServlet;如果根据url不能找到类,那么就用defaultServlet

 

程序员灯塔
转载请注明原文链接:学习tomcat源码知识
喜欢 (0)