什么是servlet前鹅,servlet作用
1、什么是servlet
簡(jiǎn)單來說servlet是運(yùn)行在服務(wù)器上的java程序峭梳,servlet由servlet容器管理舰绘,servlet容器也叫 servlet引擎,是servlet的運(yùn)行環(huán)境葱椭,給發(fā)送的請(qǐng)求和響應(yīng)之上提供網(wǎng)絡(luò)服務(wù)
2捂寿、servlet的作用
通俗來講servlet專門用來接收客戶端的請(qǐng)求數(shù)據(jù),然后調(diào)用底層service處理數(shù)據(jù)并生成結(jié)果
瀏覽器http請(qǐng)求>后端服務(wù)器>到達(dá)servlet>執(zhí)行doge或dopost方法>返回?cái)?shù)據(jù)
①客戶端發(fā)送請(qǐng)求到服務(wù)器端
②服務(wù)器將請(qǐng)求信息發(fā)送至Servlet
③Servlet生成響應(yīng)內(nèi)容并將其傳給服務(wù)器孵运。
④服務(wù)器將響應(yīng)返回給客戶端秦陋。
3、servlet里的三大作用域:
request(請(qǐng)求):它的作用范圍是一次請(qǐng)求和響應(yīng)治笨,是三個(gè)作用域中最小的驳概。
session(會(huì)話):它的作用比request要大一點(diǎn),一次會(huì)話過程中旷赖,它的作用域就一直存在顺又,(默認(rèn)是30分鐘)
servletcontext:它作用范圍最大,作用于整個(gè)服務(wù)器中等孵。(Application)
4待榔、Servlet生命周期:
裝載Servlet。這項(xiàng)操作一般是動(dòng)態(tài)執(zhí)行的流济。然而,Server通常會(huì)提供一個(gè)管理的選項(xiàng)腌闯,用于在Server啟動(dòng)時(shí)強(qiáng)制裝載和初始化特定的Servlet绳瘟。
Server創(chuàng)建一個(gè)Servlet的實(shí)例
Server調(diào)用Servlet的init()方法
一個(gè)客戶端的請(qǐng)求到達(dá)Server
Server創(chuàng)建一個(gè)請(qǐng)求對(duì)象
Server創(chuàng)建一個(gè)響應(yīng)對(duì)象
Server激活Servlet的service()方法,傳遞請(qǐng)求和響應(yīng)對(duì)象作為參數(shù)
service()方法獲得關(guān)于請(qǐng)求對(duì)象的信息姿骏,處理請(qǐng)求糖声,訪問其他資源,獲得需要的信息
service()方法使用響應(yīng)對(duì)象的方法分瘦,將響應(yīng)傳回Server蘸泻,最終到達(dá)客戶端。service()方法可能激活其它方法以處理請(qǐng)求嘲玫,如doGet()或doPost()或程序員自己開發(fā)的新的方法
對(duì)于更多的客戶端請(qǐng)求悦施,Server創(chuàng)建新的請(qǐng)求和響應(yīng)對(duì)象,仍然激活此Servlet的service()方法去团,將這兩個(gè)對(duì)象作為參數(shù)傳遞給它抡诞。如此重復(fù)以上的循環(huán)穷蛹,但無需再次調(diào)用init()方法。一般Servlet只初始化一次 ,當(dāng)Server不再需要Servlet時(shí)(一般當(dāng)Server關(guān)閉時(shí))昼汗,Server調(diào)用Servlet的Destroy()方法肴熏。