第4章:作為Servlet:請求和響應/4.1 Servlet載入過程
阿新 • • 發佈:2018-11-04
- Servlet載入過程
- 容器tomcat啟動讀取web.xml檔案,載入相關資源
- 讀取全域性servlet資源,這部分資源所有的servlet物件共用(比如 資料庫連線資訊 ),形成ServletContext物件
- 讀取<servlet>配置段,內容包括:
- 單個servlet配置(比如:郵箱地址、家庭地址),形成ServletConfig物件
- servlet包路徑+類名,生成servlet物件
- servlet對應的URL相對路徑名,生成XXXX物件
- 容器根據上一步生成的servlet物件,迴圈呼叫servlet物件的init(ServletConfig )方法,把ServletConfig傳給servlet物件 ,然後servlet物件物件就可以使用配置資訊了
- 容器迴圈等待請求的到來,一旦有請求進來,容器新生成一個執行緒,同時生成HttpServletRequest物件,並且容器通過servlet物件呼叫
protected void javax.servlet.http.HttpServlet.service(HttpServletRequest req, HttpServletResponse resp)
方法,裡面再呼叫doGet和doPost等方法 - 其中HttpServletRequest物件可獲取的幾個重要物件包括
- 上下文資訊(也就是全域性配置)
public javax.servlet.ServletRequest.ServletContext getServletContext();
- cookies資訊
public Cookie[] javax.servlet.http.HttpServletRequest.getCookies();
- 會話資訊
public javax.servlet.http.HttpServletRequest.HttpSession getSession();
- 上下文資訊(也就是全域性配置)
- 以上過程總結如下: