Bootstrap

tomcat学习2

【HTTP工作原理】

tomcat使用 http协议 浏览器与服务器进行数据传输,底层是Tcp/Ip协议,规定了客户端与服务器之间的通信格式

 1.接受连接

2.解析请求数据

3.处理请求

4.发送响应

浏览器发给服务端的是一个HTTP格式的请求,HTTP服务器收到这个请求后,需要调用服务端程序来处理,所谓的服务端程序就是你写的Java类,一般来说不同的请求需要由不同的Java类来处理

1) 图1 , 表示HTTP服务器直接调用具体业务类,它们是紧耦合的。

2) 图2,HTTP服务器接受请求,不直接调用业务类,而是把请求交给Servlet容器,由Servlet容器根据请求决定调用哪一个业务类。完成解耦。所以所有的业务类都需要实现Servlet接口。而Servlet容器和Servlet接口可以称为Servlet规范。

【Servlet容器工作流程】

当客户请求某个资源时,HTTP服务器会用一个ServletRequest对象把客户的请求信息封装起来,然后调用Servlet容器的service方法,Servlet容器拿到请求后,根据请求的URL 和Servlet的映射关系,找到相应的Servlet,如果Servlet还没有被加载(初始化),就用反射机制创建这个Servlet,并调用Servlet的init方法来完成初始化,接着调用Servlet的service方法 来处理请求,把ServletResponse对象返回给HTTP服务器,HTTP服务器会把响应发送给客户端。

 1.定位servlet

2.加载servlet

3.调用servlet 返回响应

【Tomcat架构】

Tomcat要实现两个 核心功能

1) 处理Socket连接,负责网络字节流与Request和Response对象的转化。

2) 加载和管理Servlet,以及具体处理Request请求。 因此Tomcat设计了两个核心组件连接器(Connector)和容器(Containerÿ

;