Tomcat8.x Request、Response创建的地方
来源:互联网 发布:黑社会2 知乎 编辑:程序博客网 时间:2024/05/19 13:18
Tomcat8.x Request、Response创建的地方
// Request/Response创建的地方// org.apache.coyote.Request// org.apache.coyote.Response// org.apache.catalina.connector.Request// org.apache.catalina.connector.Response// org.apache.catalina.connector.RequestFacade// org.apache.catalina.connector.ResponseFacade// -----------1-- org.apache.coyote.Requestclass org.apache.coyote.http11.Http11Processor{// 构造函数public Http11Processor(int maxHttpHeaderSize, AbstractEndpoint<?> endpoint,int maxTrailerSize, Set<String> allowedTrailerHeaders, int maxExtensionSize, int maxSwallowSize, Map<String,UpgradeProtocol> httpUpgradeProtocols) {org.apache.coyote.Request request = new org.apache.coyote.Request(); //创建对象org.apache.coyote.Response response = new org.apache.coyote.Response();}}// -----------2-- org.apache.catalina.connector.Requestclass org.apache.catalina.connector.CoyoteAdapter{// ...public void service(org.apache.coyote.Request req, org.apache.coyote.Response res) throws Exception {org.apache.catalina.connector.Request request = (Request) req.getNote(ADAPTER_NOTES);org.apache.catalina.connector.Response response = (Response) res.getNote(ADAPTER_NOTES); if (request == null) { // org.apache.catalina.connector.Connector.createRequest(); request = connector.createRequest(); //!!!!! 创建对象 request.setCoyoteRequest(req); response = connector.createResponse(); response.setCoyoteResponse(res); // Link objects 相互关联 request.setResponse(response); response.setRequest(request); // Set as notes 设置req中 req.setNote(ADAPTER_NOTES, request); res.setNote(ADAPTER_NOTES, response); } }}// -----------3.1-- org.apache.catalina.connector.RequestFacadeclass org.apache.catalina.connector.Request{// ...public HttpServletRequest getRequest() { if (facade == null) { facade = new RequestFacade(this);//!!!!创建对象 } if (applicationRequest == null) { applicationRequest = facade;//!!! } return applicationRequest; }}// -----------3.2-- org.apache.catalina.connector.ResponseFacadeclass org.apache.catalina.connector.Response{// ...public HttpServletResponse getResponse() { if (facade == null) { facade = new ResponseFacade(this);//!!!创建对象 } if (applicationResponse == null) { applicationResponse = facade;//!!! } return applicationResponse; }}
0 0
- Tomcat8.x Request、Response创建的地方
- Tomcat8.x Servlet的创建和调用
- Struts2.x中获取request,response,session的方式
- response、request的使用
- tomcat8.X.X的 配置记录
- Tomcat8.x 上下文(StandardServer)中命名上下文(NamingContext)的创建
- request和response的区别
- request和response的作用
- request,response的常用方法?
- response和request的setCharacterEncoding
- response和request的setCharacterEncoding
- response和request的setCharacterEncoding .
- request和response的知识
- Request和Response的格式
- response和request的setCharacterEncoding
- response和request的setCharacterEncoding
- response和request的setCharacterEncoding
- request和response的知识
- [PAT]1012. The Best Rank (25)
- IME 消息 函数 常量
- 来来来,一步一步带你使用Git和GitHub(详细讲解.gitignore)
- 使用pyinstaller打包Python3.5+PyQt5.6项目生成exe文件
- 京城游戏人-Day11: Unity 中实现 IAP 内购(内付费)
- Tomcat8.x Request、Response创建的地方
- 京城游戏人-Day12: Unity 中 UI 随屏幕大小等比缩放
- poj 2187
- 同余方程组求解
- 用C语言改写C++的类
- 51Nod-1100-斜率最大
- Ubuntu14.10环境下MySQL5.6.23源码安装MySQL安装小结
- 四大CPU体系结构ARM、X86/Atom、MIPS、PowerPC
- Android studio gradle配置