电竞比分网-中国电竞赛事及体育赛事平台

分享

Java學習進階之Servlet入門知識匯總

 千鋒Python學堂 2020-03-12

對于一個Java人員來說,Servlet知識很重要,不僅企業(yè)面試時會問,在日常的項目中也有著舉足輕重的作用。接下來的鄭州Java學習進階課,小編就給大家簡單匯總Servlet入門知識。

Servlet是什么?

Servlet是基于Java技術的Web組件,由容器管理并產生動態(tài)的內容。Servlet與客戶端通過Servlet容器實現的請求/響應模型進行交互。注意:Servlet不是從命令行啟動的,而是由包含Java虛擬機的Web服務器進行加載。

Servlet的特點是什么?

1)高效。在服務器上僅有一個Java虛擬機在運行,它的優(yōu)勢在于當多個來自客戶端的請求進行訪問時,Servlet為每個請求分配一個線程而不是進程。

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

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

4)靈活性和可擴展性。采用Servlet開發(fā)的Web應用程序,由于Java類的繼承性、構造函數等特點,使得其應用靈活,可隨意擴展。

5)共享數據。Servlet之間通過共享數據可以很容易地實現數據庫連接池。它能方便地實現管理用戶請求,簡化Session和獲取前一頁面信息的操作。

6)安全。有些CGI版本有明顯的安全弱點。即使是使用最新的標準和PERL等語言,系統(tǒng)也沒有基本安全框架。而Java定義有完整的安全機制,包括SSL\CA認證、安全政策等規(guī)范。

Servlet的功能是什么?

當啟動Web服務器或客戶機第一次請求服務時,可以自動裝入Servlet,之后,Servlet繼續(xù)運行直到其他客戶機發(fā)出請求。Servlet的功能涉及范圍很廣:

1)創(chuàng)建并返回一個包含基于客戶請求性質的動態(tài)內容的完整的HTML頁面;

2)創(chuàng)建可嵌入到現有HTML頁面中的一部分HTML頁面(HTML片段);

3)與其他服務器資源(包括數據庫和基于Java的應用程序)進行通信;

4)用多個客戶機處理連接,接收多個客戶機的輸入,并將結果傳遞到多個客戶機上,例如,Servlet可以是多參與者的游戲服務器;

5)當允許在單連接方式下傳送數據的情況下,在瀏覽器上打開服務器至applet的新連接,并將該連接保持在打開狀態(tài);當允許客戶機和服務器簡單、高效地執(zhí)行會話的情況下,applet也可以啟動客戶瀏覽器和服務器之間的連接,可以通過定制協議進行通信;

6)將訂制的處理提供給所有服務器的標準程序。

Servlet層級關系:

 Servlet(接口)-->GenericServlet(抽象類,與協議無關的Servlet-->HttpServlet(抽象類,實現了Http協議的Servlet-->Custom Servlet(自定義的Servlet

Servlet的工作過程:

1)在客戶端對web服務器發(fā)出請求。

2web服務器接收到請求后將其發(fā)送給Servlet。

3Servlet容器為此產生一個實例對象并調用ServletAPI中相應的方法來對客戶端HTTP請求進行處理,然后將處理的響應結果返回給WEB服務器。

4web服務器將從Servlet實例對象中收到的響應結構發(fā)送回客戶端。

    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯系方式、誘導購買等信息,謹防詐騙。如發(fā)現有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多