溫馨提示×

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

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

Java Servlet有什么用

發(fā)布時(shí)間:2021-11-03 11:02:31 來源:億速云 閱讀:185 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關(guān)Java Servlet有什么用的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。

下圖顯示了 Servlet 在 Web 應(yīng)用程序中的位置。

Java Servlet有什么用
1.Servlet的定義:
服務(wù)器小程序,是用Java編寫的服務(wù)器端程序,由客戶端請(qǐng)求、服務(wù)器調(diào)用和執(zhí)行的。 父類是GenericServlet或HttpServlet.
2.servlet的生命周期
(初始化階段、運(yùn)行階段、銷毀階段)當(dāng)?shù)谝淮握?qǐng)求某個(gè)servlet時(shí)服務(wù)器自動(dòng)載入并實(shí)例化該servlet并完成對(duì)其的一些初始化工作;當(dāng)一個(gè)請(qǐng)求到達(dá)容器時(shí),容器尋找相應(yīng)的servlet實(shí)例,然后創(chuàng)建一個(gè)線程,根據(jù)此線程調(diào)用service方法,doGt,doPost方法,當(dāng)調(diào)用結(jié)束后調(diào)用destroy方法銷毀該servlet
3.Servlet與JavaBean的區(qū)別:
前者由服務(wù)器加載后者由用戶程序加載。Servlet必須繼承自HttpServlet并覆蓋service或doGet或doPost方法,并且要在web.xml配置 ;Javabean就是一個(gè)普通的Java類,里面為屬性增加了getter和setter并提供默認(rèn)構(gòu)造??梢栽诙鄬蛹軜?gòu)的各層存在。想用它作什么都行。而Servlet是展示層的,應(yīng)當(dāng)只在展示層存在。常作為MVC中的控制器。
4.Java Servlet 通常情況下與使用 CGI(Common Gateway Interface,公共網(wǎng)關(guān)接口)實(shí)現(xiàn)的程序可以達(dá)到異曲同工的效果。但是相比于 CGI,Servlet 有以下幾點(diǎn)優(yōu)勢:
1.性能明顯更好。
2.Servlet 在 Web 服務(wù)器的地址空間內(nèi)執(zhí)行。這樣它就沒有必要再創(chuàng)建一個(gè)單獨(dú)的進(jìn)程來處理每個(gè)客戶端請(qǐng)求。
3.Servlet 是獨(dú)立于平臺(tái)的,因?yàn)樗鼈兪怯?Java 編寫的。
4.服務(wù)器上的 Java 安全管理器執(zhí)行了一系列限制,以保護(hù)服務(wù)器計(jì)算機(jī)上的資源。因此,Servlet 是可信的。
5.Java 類庫的全部功能對(duì) Servlet 來說都是可用的。它可以通過 sockets 和 RMI 機(jī)制與 applets、數(shù)據(jù)庫或其他軟件進(jìn)行交互。
5.Servlet的主要任務(wù):
1.它讀取客戶端(瀏覽器)發(fā)送的顯式的數(shù)據(jù)。這包括網(wǎng)頁上的HTML表單,或者也可以是來自applet或自定義的 HTTP 客戶端程序的表單。
2.讀取客戶端(瀏覽器)發(fā)送的隱式的 HTTP 請(qǐng)求數(shù)據(jù)。這包括 cookies、媒體類型和瀏覽器能理解的壓縮格式等等。
3.處理數(shù)據(jù)并生成結(jié)果。這個(gè)過程可能需要訪問數(shù)據(jù)庫,執(zhí)行 RMI 或 CORBA 調(diào)用,調(diào)用 Web 服務(wù),或者直接計(jì)算得出對(duì)應(yīng)的響應(yīng)。
4.發(fā)送顯式的數(shù)據(jù)(即文檔)到客戶端(瀏覽器)。該文檔的格式可以是多種多樣的,包括文本文件(HTML或XML)、二進(jìn)制文件(GIF 圖像)、Excel 等。
5.發(fā)送隱式的 HTTP 響應(yīng)到客戶端(瀏覽器)。這包括告訴瀏覽器或其他客戶端被返回的文檔類型(例如 HTML),設(shè)置 cookies 和緩存參數(shù),以及其他類似等任務(wù)。

感謝各位的閱讀!關(guān)于“Java Servlet有什么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

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

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

AI