IT培訓(xùn)網(wǎng)
IT在線學(xué)習(xí)
一、Servlet是什么
Servlet是一個(gè)類,是一個(gè)用Java語(yǔ)言編寫的、實(shí)現(xiàn)Servlet接口的類,一個(gè)與訪問(wèn)協(xié)議和平臺(tái)無(wú)關(guān)的,運(yùn)行在Servlet容器中的Java程序。
Servlet沒(méi)有main方法,不能獨(dú)立運(yùn)行;它只有實(shí)例化、初始化、運(yùn)行、銷毀方法,被編譯成與平臺(tái)無(wú)關(guān)的字節(jié)碼文件后,需要加載到Servlet容器中才能執(zhí)行,并且由Servlet容器管理Servlet的整個(gè)生命周期,所以,也常常稱Servlet是Servlet容器上運(yùn)行的服務(wù)器小程序。
Servlet推出初期,主要是作為支持HTTP協(xié)議的WEB服務(wù)器上的一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù);隨著Servlet技術(shù)的不斷發(fā)展,Servlet可以作為支持任何協(xié)議的、實(shí)現(xiàn)Java API的服務(wù)器上的服務(wù)程序。
Servlet運(yùn)行在服務(wù)器上,它可以接受來(lái)自客戶端的請(qǐng)求,并將處理結(jié)果返回給客戶端,于是,在許多應(yīng)用中,Servlet主要用于實(shí)現(xiàn)動(dòng)態(tài)網(wǎng)頁(yè),亦或作為前端頁(yè)面與后臺(tái)數(shù)據(jù)庫(kù)或者后臺(tái)服務(wù)器程序之間的中間件。
二、Servlet容器
Servlet容器作為支撐Servlet運(yùn)行的平臺(tái),是一個(gè)非常重要的部件。也可以把Servlet容器看成是一個(gè)裝載著許多Servlet對(duì)象的容器,Servlet容器負(fù)責(zé)管理這些Servlet對(duì)象。
Servlet容器運(yùn)行在JVM(Java虛擬機(jī))之上,管理Servlet的實(shí)例化、初始化、實(shí)例對(duì)象的運(yùn)行和銷毀,并提供最基礎(chǔ)的運(yùn)行支撐,例如:Servlet容器負(fù)責(zé)接收請(qǐng)求、轉(zhuǎn)發(fā)請(qǐng)求、發(fā)送響應(yīng)、管理會(huì)話狀態(tài)、實(shí)現(xiàn)數(shù)據(jù)共享等等。
Servlet容器至少支持通過(guò)HTTP協(xié)議訪問(wèn)Servlet,也可以支持其他協(xié)議,例如:HTTPS、FTP、POP、SMTP等。
訪問(wèn)Servlet容器中Servlet的過(guò)程如下:
(1)客戶發(fā)送訪問(wèn)請(qǐng)求至Servlet容器
(2)Servlet容器接收請(qǐng)求,解析,然后將請(qǐng)求發(fā)送給相應(yīng)的Servlet處理
(3)Servlet執(zhí)行,將處理結(jié)果返回給Servlet容器
(4)Servlet容器接收處理結(jié)果,將處理結(jié)果返回給客戶
從以上訪問(wèn)Servlet的過(guò)程,可以看出,Servlet容器的作用如下:
(1)接收請(qǐng)求:當(dāng)客戶請(qǐng)求來(lái)到時(shí),Servlet容器負(fù)責(zé)接收請(qǐng)求
(2)管理與調(diào)用Servlet:Servlet容器管理Servlet的加載、實(shí)例化、初始化、調(diào)用與垃圾回收,根據(jù)請(qǐng)求的Servlet地址,調(diào)用要訪問(wèn)的Servlet
(3)返回響應(yīng)結(jié)果:將Servlet的執(zhí)行結(jié)果返回給客戶
Servlet運(yùn)行在Servlet容器中,容器為Servlet提供運(yùn)行時(shí)的平臺(tái)支撐,于是,在Servlet中,只需要專注于業(yè)務(wù)邏輯功能實(shí)現(xiàn),而無(wú)需考慮網(wǎng)絡(luò)通訊、垃圾回收等功能,這些基本功能由Servlet容器提供。
>>本文地址:http://m.littlerockbway.com/zhuanye/2020/54244.html
聲明:本站稿件版權(quán)均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
1 您的年齡
2 您的學(xué)歷
3 您更想做哪個(gè)方向的工作?
07月15日Java
咨詢/試聽(tīng)07月15日Python+人工智能
咨詢/試聽(tīng)07月15日Web前端
咨詢/試聽(tīng)07月15日UI設(shè)計(jì)
咨詢/試聽(tīng)07月15日大數(shù)據(jù)
咨詢/試聽(tīng)07月15日Java
咨詢/試聽(tīng)07月15日Python+人工智能
咨詢/試聽(tīng)07月15日Web前端
咨詢/試聽(tīng)07月15日UI設(shè)計(jì)
咨詢/試聽(tīng)07月15日大數(shù)據(jù)
咨詢/試聽(tīng)