tomcat 如何实现request请求绑定
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tomcat 如何实现request请求绑定相关的知识,希望对你有一定的参考价值。
示意图
简述
1. 请求进入NioEndpoint,找到协议Handler,
2. 创建Http11Processor,填充request对象
3. 触发CoyoteAdapter 将request、response送入下一环节处理。engine->host-context-servlet
关键代码入口
1. 初始化 connector的协议handler、CoyoteAdapter选择com.tongweb.container.connector.Connector#initInternal
2. 请求进入 -nioEndpoint处理 processor环节
com.tongweb.web.util.net.NioEndpoint.SocketProcessor#doRun
3. 请求进入-协议抽象类AbstractProtocol
com.tongweb.connector.AbstractProtocol.ConnectionHandler#process
3.1 创建Processor
初始化,com.tongweb.connector.http11.AbstractHttp11Protocol#createProcessor 创建Http11Processor 间接创建了Request、Response
4. Http11Processor
#process 初始化
处理 com.tongweb.connector.http11.Http11Processor#service,填充request 信息
#service
CoyoteAdater触发service方法
this.connector.getService().getContainer().getPipeline().getFirst().invoke(request, response)
以上是关于tomcat 如何实现request请求绑定的主要内容,如果未能解决你的问题,请参考以下文章