tomcat的工作流程

目录

1、程序基本内容:

2、实现原理:

3、浏览器与tomcat

4、tomcat核心功能

5、总结:


tomcat有主方法,servlet借助tomcat运行。

tomcat文件夹

tomcat的工作流程_第1张图片

1、程序基本内容:

bin:包含各种脚本

conf:是confige的缩写,有很多配置文件,程序启动肯定会读取配置文件

lib:程序的主体部分,包含程序的主体代码

logs:运行日志,运行期间的各种情况

webapps:存放网站,一个文件就代表一个网站

给定一个指定目录,能遍历该目录下的所有文件,拿到信息,通过这种遍历,能获得所有Java类的路径信息,反射能通过注解把servlet挑选出来。

2、实现原理:

  • tomcat是由Java编写的,所以可以和servlet合成一个程序。用tomcat启动网站,实际就是将网站与tomcat合成一个项目。
  • tomcat处理HTML就像读取普通文件,当作字节流返回给前端。
  • tomcat通过socket收发数据。
  • 不同的进程,浏览器和tomcat之间通过socket在端口交流
  • tomcat接收数据后,调用servlet,把接收到的数据作为参数传递给servlet
  • 通过注解拿到servlet,通过反射拿到方法,getName

3、浏览器与tomcat

在html页面中如果出现了对js、img等文件的引用,浏览器会自动发送请求。

tomcat的工作流程_第2张图片

tomcat通过socket拿到了带有HTTP字段的数据,封装到了doGet方法的HttpServletRequest和HttpServletResponse中,所以request中既有数据又有HTTP协议。

字节流读取:Unicode16位,两个byte是一个16位,其中一个左移8位,再加上之前的就读取出来了一个Unicode。

4、tomcat核心功能

tomcat启动socket服务,浏览器给服务器端口发请求,socket接收HTTP请求,Java中的HTTP协议都是字符串不同的属性用换行符切分,socket接收并对字符串进行分析,封装进HttpServletRequest request中。

5、总结:

tomcat通过socket收发数据,不同的进程,浏览器和tomcat之间通过socket在端口交流。

tomcat启动socket服务,浏览器给服务器端口发请求,tomcat同过socket接收到HTTP请求,socket接收了带有HTTP字段的数据并对这些字符串进行分析,封装到了doGet方法的HttpServletRequest request中(所以request中既有数据又有HTTP协议的内容),如果请求的是servlet,就通过注解拿到servlet,再反射和代理调用servlet的方法,最终调用socket返回处理的数据。

如果请求的是静态资源,如html,css,js,图片,文件等,就直接读取文件的编码内容,当作字节流通过socket返回给前端浏览器。

你可能感兴趣的:(tomcat)