隨著Web應(yīng)用業(yè)務(wù)需求的增多,動(dòng)態(tài)Web資源的開(kāi)發(fā)變的越來(lái)越重要。目前,很多公司都提供了開(kāi)發(fā)動(dòng)態(tài)Web資源的相關(guān)技術(shù),其中比較常見(jiàn)的有ASP、PHP、JSP和Servlet等?;贘ava的動(dòng)態(tài)Web資源開(kāi)發(fā),SUN公司提供了Servlet和JSP兩種技術(shù)。接下來(lái),我們來(lái)詳細(xì)了解Servlet技術(shù)。
1.什么是Servlet?
Servlet是在運(yùn)行在服務(wù)器端的小
程序。這個(gè)詞是在Java
applet的環(huán)境中創(chuàng)造的。雖然后者已很少被使用,但Servlet卻發(fā)展的很好。同時(shí),Servlet也是javaweb的三大組件之一,屬于動(dòng)態(tài)資源的一種。
Servlet的主要任務(wù)就是處理客戶(hù)端發(fā)送的請(qǐng)求,現(xiàn)在我們來(lái)具體分析一下Servlet的主要任務(wù):
- 獲取請(qǐng)求數(shù)據(jù):例如做登錄操作時(shí),Servlet就需要獲取到用戶(hù)輸入的用戶(hù)名和密碼;
- 處理請(qǐng)求:還以登錄操作為例,Servlet對(duì)請(qǐng)求數(shù)據(jù),用戶(hù)名和密碼進(jìn)行處理;
- 響應(yīng)請(qǐng)求:對(duì)于登錄操作來(lái)說(shuō),Servlet給瀏覽器的響應(yīng)即為登錄成功或登錄失敗。
客戶(hù)端發(fā)出登錄請(qǐng)求,或者注冊(cè)請(qǐng)求,這些請(qǐng)求都會(huì)交給Servlet來(lái)處理,并且這些Servlet都是由我們自己來(lái)編寫(xiě)的。
下面通過(guò)一張圖來(lái)形象的展示Servlet,如圖1-1所示:
圖1-1 Servlet介紹
由圖1-1可得出以下幾點(diǎn):
- 不同的請(qǐng)求對(duì)應(yīng)不同的Servlet;
- 每一個(gè)Servlet都是唯一的;
- 服務(wù)器端會(huì)存在多個(gè)Servlet,來(lái)處理不同的請(qǐng)求。
2.Servlet相關(guān)的接口和類(lèi)
針對(duì)Servlet技術(shù)的開(kāi)發(fā),SUN公司提供了一系列的接口和類(lèi),其中最重要的是javax.servlet.Servlet接口。下面我們來(lái)了解三個(gè)和Servlet技術(shù)相關(guān)的接口和類(lèi):
- javax.servlet.Servlet接口;
- javax.servlet.GenericServlet類(lèi);
- javax.servlet.http.HttpServlet類(lèi);
通過(guò)一張圖來(lái)了解它們?nèi)齻€(gè)之間的關(guān)系,如圖1-2所示:
圖1-2 三者關(guān)系圖
自定義一個(gè)Servlet類(lèi),有以下三種書(shū)寫(xiě)方式:
- 實(shí)現(xiàn)javax.servlet.Servlet 接口
- 繼承javax.servlet.GenericServlet類(lèi)
- 繼承javax.servlet.http.HttpServlet類(lèi)
我們剛剛接觸Servlet,為了能夠更加了解Servlet的一些功能特性,我們會(huì)從實(shí)現(xiàn)Servlet接口開(kāi)始學(xué)習(xí)。當(dāng)我們對(duì)Servlet有了一定的了解之后,我們最常用到的方式是繼承HttpServlet。
本文版權(quán)歸傳智播客Java培訓(xùn)學(xué)院所有,歡迎轉(zhuǎn)載,轉(zhuǎn)載請(qǐng)注明作者出處。謝謝!
作者:傳智播客Java培訓(xùn)學(xué)院
首發(fā):http://metathetuscanyresort.com/javaee