當(dāng)客戶(hù)端向服務(wù)器發(fā)送請(qǐng)求時(shí),服務(wù)器是如何將請(qǐng)求信息傳遞給Servlet,Servlet又是通過(guò)什么將響應(yīng)送給客戶(hù)端。帶著這些問(wèn)題,我們來(lái)看下面這張圖,圖1-1:
圖1-1 請(qǐng)求響應(yīng)流程圖
由圖1-1可知,服務(wù)器向Servlet傳遞了兩個(gè)對(duì)象,分別是request對(duì)象和response對(duì)象?,F(xiàn)在我們來(lái)分析一下請(qǐng)求響應(yīng)的流程。具體如下:
(1)當(dāng)客戶(hù)端向服務(wù)器發(fā)送請(qǐng)求時(shí),服務(wù)器會(huì)先創(chuàng)建兩個(gè)對(duì)象:request對(duì)象和response對(duì)象。其中request對(duì)象中封裝的是請(qǐng)求信息,response是用來(lái)向客戶(hù)端響應(yīng)信息。
(2)創(chuàng)建后,服務(wù)器會(huì)將兩個(gè)對(duì)象作為參數(shù)傳遞到客戶(hù)端請(qǐng)求的Servlet的service()方法中,Servlet就可以從request對(duì)象中獲取請(qǐng)求信息;處理之后,使用response向客戶(hù)端響應(yīng)信息。
我們知道Servlet是單例的,當(dāng)多個(gè)用戶(hù)同時(shí)請(qǐng)求一個(gè)Servlet時(shí),服務(wù)器會(huì)為每個(gè)請(qǐng)求開(kāi)啟一個(gè)線(xiàn)程去訪(fǎng)問(wèn)Servlet,當(dāng)請(qǐng)求完畢之后,request和response死亡;再次訪(fǎng)問(wèn)時(shí),服務(wù)器再創(chuàng)建新的request和response對(duì)象,因此這兩個(gè)對(duì)象的生命周期很短暫。
本文版權(quán)歸傳智播客Java培訓(xùn)學(xué)院所有,歡迎轉(zhuǎn)載,轉(zhuǎn)載請(qǐng)注明作者出處。謝謝!
作者:傳智播客Java培訓(xùn)學(xué)院
首發(fā):http://metathetuscanyresort.com/javaee