溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

什么是servlet技術(shù)

發(fā)布時(shí)間:2020-07-11 16:51:57 來源:億速云 閱讀:646 作者:Leah 欄目:編程語言

什么是servlet技術(shù)?相信很多沒有經(jīng)驗(yàn)的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。

Servlet是一種獨(dú)立于平臺和協(xié)議的服務(wù)器端的Java技術(shù),可以用來生成動態(tài)的Web頁面。Servlet是使用Java Servlet應(yīng)用程序設(shè)計(jì)接口(API)及相關(guān)類和方法的Java程序。Servlet主要用戶處理客戶端傳來的HTTP請求,并返回一個(gè)響應(yīng)。通常Servlet是指HttpServlet,用于處理HTTP請求。能夠處理的請求有:doGet() doPost() service()等。在開發(fā)Servlet時(shí),可以直接繼javax.servlet.http.HttpServlet。

Servlet與Servlet容器

Java Servlet(Java服務(wù)器小程序)是一個(gè)基于Java技術(shù)的Web組件,運(yùn)行在服務(wù)器端,由Servlet容器所管理,用于生成動態(tài)的內(nèi)容。Servlet是平臺獨(dú)立的Java類,編寫一個(gè)Servlet,實(shí)際上就是按照Servlet規(guī)范編寫一個(gè)Java類。Servlet被編譯為平臺獨(dú)立的字節(jié)碼,可以被動態(tài)地加載到支持Java技術(shù)的Web服務(wù)器中運(yùn)行。

Servlet容器(Servlet引擎)是Web服務(wù)器或應(yīng)用程序服務(wù)器的一部分,用于在發(fā)送的請求和響應(yīng)之上提供網(wǎng)絡(luò)服務(wù),解碼基于MIME的請求,格式化機(jī)遇MIME的響應(yīng)。

Servlet不能獨(dú)立于運(yùn)行,必須被部署到Servlet容器中,由容器來實(shí)例化和調(diào)用Servlet的方法,Servlet容器在Servlet的生命周期內(nèi)包容和管理Servlet。

Servlet技術(shù)特點(diǎn)

高效,方便,跨平臺,功能強(qiáng)大,靈活性和可擴(kuò)展性,共享數(shù)據(jù),安全。

1. 高效

在服務(wù)器上僅有一個(gè)Java虛擬機(jī)在運(yùn)行,它的優(yōu)勢在于當(dāng)多個(gè)來自客戶端的請求進(jìn)行訪問時(shí),Servlet為每個(gè)請求分配一個(gè)線程而不是進(jìn)程。

2. 方便

Servlet提供了大量的實(shí)用工具例程,如處理很難完成的HTML表單數(shù)據(jù),讀取和設(shè)置HTTP頭,處理Cookie和跟蹤會話等。

3. 跨平臺

Servlet是用Java類編寫的,可以在不同的操作系統(tǒng)平臺和應(yīng)用服務(wù)器平臺下運(yùn)行。

4. 功能強(qiáng)大

在Servlet中,許多實(shí)用傳統(tǒng)CGI程序很難完成的任務(wù)都可以利用Servlet技術(shù)輕松完成。例如,Servlet能夠直接和Web服務(wù)器交互,而普通的CGI程序不能。Servlet還能夠在各個(gè)程序之間共享數(shù)據(jù),使得數(shù)據(jù)庫連接池之類的功能很容易實(shí)現(xiàn)。

5. 靈活性和可擴(kuò)展性

采用Servlet開發(fā)的Web應(yīng)用程序,由于Java類的繼承性,構(gòu)造函數(shù)等特點(diǎn),使得其應(yīng)用靈活,可隨意擴(kuò)展。

6. 共享數(shù)據(jù)

Servlet之間通過共享數(shù)據(jù)可以很容易地實(shí)現(xiàn)數(shù)據(jù)庫連接池。它能方便地實(shí)現(xiàn)管理用戶請求,簡化Session和獲取前一頁面信息的操作,而在CGI之間通信則很差。由于每個(gè)CGI程序的調(diào)用都開始一個(gè)新的進(jìn)程,調(diào)用間通信通常要通過文件進(jìn)行,因而相當(dāng)緩慢。同一臺服務(wù)器上的不同CGI程序之間的通信也相當(dāng)麻煩。

7. 安全

有些CGI版本有明顯的安全弱點(diǎn)。即使是實(shí)用最新標(biāo)準(zhǔn),系統(tǒng)也沒有基本安全框架。而Java定義有完整的安全機(jī)制,包括SSL\CA認(rèn)證、安全政策等規(guī)范。

Servlet 動態(tài)頁面階段

用戶訪問頁面過程:

用戶通過點(diǎn)擊鏈接或者直接輸入U(xiǎn)RL訪問Servlet。

Web服務(wù)器接收到請求后,交給Servlet容器。

Servlet容器實(shí)例化Servlet。

調(diào)用Servlet特定方法對請求進(jìn)行處理,并且產(chǎn)生一個(gè)響應(yīng)。

響應(yīng)由Servlet容器返回給Web容器。

Web容器包裝這個(gè)響應(yīng),以HTTP響應(yīng)的形式發(fā)送給瀏覽器。

看完上述內(nèi)容,你們掌握什么是servlet技術(shù)的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI

<fieldset id="byoah"><big id="byoah"></big></fieldset><tt id="byoah"><listing id="byoah"></listing></tt>
  • <var id="byoah"><tbody id="byoah"></tbody></var>
    <menu id="byoah"></menu>
    <u id="byoah"><menu id="byoah"></menu></u>