400-650-7353
您所在的位置:首頁 > IT干貨資料 > java > 【Java基礎(chǔ)知識(shí)】Servlet基礎(chǔ)知識(shí)學(xué)習(xí)(一)

【Java基礎(chǔ)知識(shí)】Servlet基礎(chǔ)知識(shí)學(xué)習(xí)(一)

  • 發(fā)布: java培訓(xùn)
  • 來源:Java培訓(xùn)干貨資料
  • 2020-09-02 18:50:31
  • 閱讀()
  • 分享
  • 手機(jī)端入口

一、Servlet是什么

Servlet是一個(gè)類,是一個(gè)用Java語言編寫的、實(shí)現(xiàn)Servlet接口的類,一個(gè)與訪問協(xié)議和平臺(tái)無關(guān)的,運(yùn)行在Servlet容器中的Java程序。

Servlet沒有main方法,不能獨(dú)立運(yùn)行;它只有實(shí)例化、初始化、運(yùn)行、銷毀方法,被編譯成與平臺(tái)無關(guān)的字節(jié)碼文件后,需要加載到Servlet容器中才能執(zhí)行,并且由Servlet容器管理Servlet的整個(gè)生命周期,所以,也常常稱Servlet是Servlet容器上運(yùn)行的服務(wù)器小程序。

Servlet推出初期,主要是作為支持HTTP協(xié)議的WEB服務(wù)器上的一種動(dòng)態(tài)網(wǎng)頁技術(shù);隨著Servlet技術(shù)的不斷發(fā)展,Servlet可以作為支持任何協(xié)議的、實(shí)現(xiàn)Java API的服務(wù)器上的服務(wù)程序。

Servlet運(yùn)行在服務(wù)器上,它可以接受來自客戶端的請(qǐng)求,并將處理結(jié)果返回給客戶端,于是,在許多應(yīng)用中,Servlet主要用于實(shí)現(xiàn)動(dòng)態(tài)網(wǎng)頁,亦或作為前端頁面與后臺(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容器至少支持通過HTTP協(xié)議訪問Servlet,也可以支持其他協(xié)議,例如:HTTPS、FTP、POP、SMTP等。

訪問Servlet容器中Servlet的過程如下:

(1)客戶發(fā)送訪問請(qǐng)求至Servlet容器

(2)Servlet容器接收請(qǐng)求,解析,然后將請(qǐng)求發(fā)送給相應(yīng)的Servlet處理

(3)Servlet執(zhí)行,將處理結(jié)果返回給Servlet容器

(4)Servlet容器接收處理結(jié)果,將處理結(jié)果返回給客戶

從以上訪問Servlet的過程,可以看出,Servlet容器的作用如下:

(1)接收請(qǐng)求:當(dāng)客戶請(qǐng)求來到時(shí),Servlet容器負(fù)責(zé)接收請(qǐng)求

(2)管理與調(diào)用Servlet:Servlet容器管理Servlet的加載、實(shí)例化、初始化、調(diào)用與垃圾回收,根據(jù)請(qǐng)求的Servlet地址,調(diào)用要訪問的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ǎng)絡(luò)通訊、垃圾回收等功能,這些基本功能由Servlet容器提供。

文章“【Java基礎(chǔ)知識(shí)】Servlet基礎(chǔ)知識(shí)學(xué)習(xí)(一)”已幫助

>>本文地址:http://liujunjsxg.cn/zhuanye/2020/54244.html

THE END  

聲明:本站稿件版權(quán)均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。

1 您的年齡

2 您的學(xué)歷

3 您更想做哪個(gè)方向的工作?

獲取測(cè)試結(jié)果
  • 大前端大前端
  • 大數(shù)據(jù)大數(shù)據(jù)
  • 互聯(lián)網(wǎng)營(yíng)銷互聯(lián)網(wǎng)營(yíng)銷
  • JavaJava
  • Linux云計(jì)算Linux
  • Python+人工智能Python
  • 嵌入式物聯(lián)網(wǎng)嵌入式
  • 全域電商運(yùn)營(yíng)全域電商運(yùn)營(yíng)
  • 軟件測(cè)試軟件測(cè)試
  • 室內(nèi)設(shè)計(jì)室內(nèi)設(shè)計(jì)
  • 平面設(shè)計(jì)平面設(shè)計(jì)
  • 電商設(shè)計(jì)電商設(shè)計(jì)
  • 網(wǎng)頁設(shè)計(jì)網(wǎng)頁設(shè)計(jì)
  • 全鏈路UI/UE設(shè)計(jì)UI設(shè)計(jì)
  • VR/AR游戲開發(fā)VR/AR
  • 網(wǎng)絡(luò)安全網(wǎng)絡(luò)安全
  • 新媒體與短視頻運(yùn)營(yíng)新媒體
  • 直播帶貨直播帶貨
  • 智能機(jī)器人軟件開發(fā)智能機(jī)器人
 

快速通道fast track

近期開班時(shí)間TIME