假設來自使用者的請求為: http://localhost:8080/wsota/wsota_index.jsp
1) 請求被傳送到本機埠8080,被在那裡偵聽的coyote http/1.1 connector獲得
2) connector把該請求交給它所在的service的engine來處理,並等待來自engine的回應
3) engine獲得請求localhost/wsota/wsota_index.jsp,匹配它所擁有的所有虛擬主機host
4) engine匹配到名為localhost的host(即使匹配不到也把請求交給該host處理,因為該host被定義為該engine的預設主機)
5) localhost host獲得請求/wsota/wsota_index.jsp,匹配它所擁有的所有context
6) host匹配到路徑為/wsota的context(如果匹配不到就把該請求交給路徑名為""的context去處理)
8) context匹配到url pattern為*.jsp的servlet,對應於jspservlet類
9) 構造httpservletrequest物件和httpservletresponse物件,作為引數呼叫jspservlet的doget或dopost方法
10)context把執行完了之後的httpservletresponse物件返回給host
11)host把httpservletresponse物件返回給engine
12)engine把httpservletresponse物件返回給connector
13)connector把httpservletresponse物件返回給客戶browser
Tomcat處理乙個http請求的過程
1 請求被傳送到本機埠8080,被在那裡偵聽的coyote http 1.1 connector獲得 2 connector把該請求交給它所在的service的engine來處理,並等待來自engine的回應 3 engine獲得請求localhost wsota wsota index.jsp,匹...
Tomcat 處理http流程
例如請求 http localhost 8080 iportal index.jsp connector 根據協議開放埠接收request,並且返回response catalina defaulthost localhost 解析虛擬主機host,即使匹配不到也把請求交給該host處理,因為該ho...
手寫乙個Tomcat
1 工程截圖 2 封裝請求物件 通過輸入流,對http協議進行解析,拿到了http請求頭的方法和url author wangjie version 2018 11 9 封裝請求物件 通過輸入流,對http協議進行解析,拿到http請求頭的方法和url 3 封裝響應物件 基於http協議的格式進行輸...