小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

day01

 _淡淡的憂桑_ 2018-03-19
# 1.什么是Servlet?
sun公司制訂的一種用來擴(kuò)展web服務(wù)器功能的組件規(guī)范。
## (1)擴(kuò)展web服務(wù)器功能
早期的web服務(wù)器(apache web server,iis)
只能處理靜態(tài)資源的請(qǐng)求(即需要事先將html文件
寫好并添加到服務(wù)器上),不能夠處理動(dòng)態(tài)資源的
請(qǐng)求(即需要計(jì)算,生成html)。所以,需要擴(kuò)展
這些web服務(wù)器的功能。
(了解)
早期使用CGI程序來擴(kuò)展。
CGI(Common Gateway Interface):
通用網(wǎng)關(guān)接口,可以使用c,perl等來開發(fā)符合
CGI接口規(guī)范的程序。CGI程序開發(fā)繁瑣,不好
移值,所以用得比較少了。

## (2)組件規(guī)范

### 1)什么是組件?
符合規(guī)范,具有部分功能,并且需要部署到相應(yīng)的
容器里面才能運(yùn)行的軟件模塊。
Servlet就是一個(gè)符合Servlet規(guī)范的組件,需要部署
到Servlet容器里面才能運(yùn)行。

### 2)什么是容器?
符合規(guī)范,提供組件的運(yùn)行環(huán)境的程序。
Servlet容器(比如Tomcat 雄貓)也是要符合
相應(yīng)的Servlet規(guī)范。
Servlet容器提供Servlet組件的運(yùn)行環(huán)境(提供
網(wǎng)絡(luò)相關(guān)的服務(wù))。
![](servlet.png) 

## (了解)
a.tomcat也是一個(gè)簡(jiǎn)單的web服務(wù)器(其實(shí),
大部分的Servlet容器同時(shí)也是一個(gè)簡(jiǎn)單的web
服務(wù)器)。  
b.對(duì)于大型的web應(yīng)用,最好要安裝一個(gè)專業(yè)的
web服務(wù)器(比如apache web server),由這些
服務(wù)器來抗壓(并發(fā)請(qǐng)求量很大),另外,將
靜態(tài)資源(html)存放到這些web服務(wù)器上面,
Servlet容器只負(fù)責(zé)計(jì)算。

# 2.如何寫一個(gè)Servlet?

## step1.寫一個(gè)java類,實(shí)現(xiàn)Servlet接口或者
繼承HttpServlet抽象類。
## step2.編譯。 
## step3.打包(即將Servlet變成一個(gè)組件)
要?jiǎng)?chuàng)建一個(gè)具有如下結(jié)構(gòu)的文件夾:
appname (應(yīng)用名,可以自定義)
WEB-INF (固定寫法)
classes(固定寫法,存放 .class文件)
lib(可以沒有,存放 .jar文件)
web.xml(固定寫法,部署描述文件)
## step4.部署 
將step3創(chuàng)建好的整個(gè)文件夾拷貝到容器指定的位置。
注:
可以將step3創(chuàng)建好的整個(gè)文件夾使用jar
命令壓縮成.war文件,然后再拷貝。
## step5.啟動(dòng)容器,訪問Servlet。
打開瀏覽器,輸入
http://ip:port/appname/url-pattern。
注:
ip,port:容器所在的機(jī)器的ip地址,容器所
監(jiān)聽的端口號(hào)(tomcat默認(rèn)的端口是
8080)。
url-pattern:在web.xml中定義。

# 3. Servlet運(yùn)行過程
比如,在瀏覽器地址欄輸入
http://ip:port/day01/hello?username=Giving
hello Giving
![](servlet2.png)
![](web.png)

# 4. 常見問題及解決方式
## (1)404
### a. 404是一個(gè)狀態(tài)碼,表示服務(wù)器找不到對(duì)應(yīng)的資源。
b. 產(chǎn)生的原因:
b1.請(qǐng)求路徑寫錯(cuò)。
b2.沒有部署成功。
## (2)500
a. 500也是一個(gè)狀態(tài)碼,表示服務(wù)器運(yùn)行出錯(cuò)。
b. 產(chǎn)生的原因:
b1.配置文件寫錯(cuò)。
b2.源代碼出錯(cuò)。
比如沒有繼承HttpServlet。
代碼不嚴(yán)謹(jǐn),比如對(duì)用戶的輸入的數(shù)據(jù)
沒有做檢查就做強(qiáng)制轉(zhuǎn)換。
## (3)405
a.405也是一個(gè)狀態(tài)碼,表示服務(wù)器找不到處理方法。
b.產(chǎn)生的原因:
a.service方法不合法:

![](exec.png)



    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多