Servlet處理
- 客戶端發(fā)送Http請求,會到達(dá)Tomcat 內(nèi)置服務(wù)器
2.Tomcat內(nèi)置服務(wù)器接受到請求,轉(zhuǎn)發(fā)給servlet 容器
3.servlet容器接收到請求后加載servlet,產(chǎn)生servlet實例后,向其傳遞表示請求和相應(yīng)的對象
HttpServletRequest對象和HttpServletResponse對象,然后Servlet實例使用請求對象得到客戶的請
求信息,并進(jìn)行相應(yīng)的處理 - servlet 處理完畢之后,有可能會將請求轉(zhuǎn)發(fā)給其他servlet繼續(xù)進(jìn)行處理
- 全部處理完畢后,處理結(jié)果會通過顯示對象發(fā)送回客戶端瀏覽器
Servlet 執(zhí)行流程
- 當(dāng)Servlet 被裝載并實例后,容器會首先調(diào)用 init ( )方法 , 對Servlet 進(jìn)行初始化,
只有init()方法調(diào)用成功后, Servlet才會處于服務(wù)狀態(tài), 接收客戶端的請求并進(jìn)行處
理,在整個生命周期中, init()只會被調(diào)用一次 - 執(zhí)行完初始化操作之后,調(diào)用Service()方法,來對客戶端請求進(jìn)行處理,在生命周期中會被
調(diào)用多次,跟請求的次數(shù)有關(guān) - 當(dāng)Servlet 不再使用,容器銷毀Servlet之前會調(diào)用destroy 方法,也只調(diào)用一次.