本篇文章為大家展示了servlet如何利用myeclipse進(jìn)行創(chuàng)建,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。
創(chuàng)新互聯(lián)建站專(zhuān)注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站建設(shè)、做網(wǎng)站、倉(cāng)山網(wǎng)絡(luò)推廣、微信小程序定制開(kāi)發(fā)、倉(cāng)山網(wǎng)絡(luò)營(yíng)銷(xiāo)、倉(cāng)山企業(yè)策劃、倉(cāng)山品牌公關(guān)、搜索引擎seo、人物專(zhuān)訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)建站為所有大學(xué)生創(chuàng)業(yè)者提供倉(cāng)山建站搭建服務(wù),24小時(shí)服務(wù)熱線:13518219792,官方網(wǎng)址:jinyejixie.com
現(xiàn)在我們來(lái)創(chuàng)建一個(gè)web應(yīng)用,就叫【myservlet】好了,如下圖所示:
可以從項(xiàng)目窗口中看出,只要?jiǎng)?chuàng)建web工程,就會(huì)自動(dòng)幫我們創(chuàng)建【W(wǎng)EB-INF】目錄,并在其下創(chuàng)建【lib】目錄和web.xml文件。我們順便來(lái)看一下剛創(chuàng)建的web.xml文件內(nèi)容:
Web.xml文件中只有設(shè)置主頁(yè)而已,為什么先看這個(gè),稍后會(huì)說(shuō)到。
我們當(dāng)然可以按照《Servlet的學(xué)習(xí)(一)》中的方法來(lái)建立Servlet,即創(chuàng)建一個(gè)類(lèi)來(lái)繼承Servlet的實(shí)現(xiàn)類(lèi)GenericServelet,復(fù)寫(xiě)service()方法,并在web.xml文件中配置這個(gè)Servlet。
但是!?。∥覀儾⒉皇褂美^承GenericServelet類(lèi)的方式,而是去繼承GenericServelet類(lèi)的子類(lèi)HttpServlet類(lèi)。這么做有什么好處呢?HttpServlet是指能夠處理HTTP請(qǐng)求的Servlet,它在原有Servlet的接口上添加了一些HTTP協(xié)議處理方法,比Servlet接口的功能更加強(qiáng)大,所以我們只需要繼承HttpServlet類(lèi)就可以了。如果你在MyEclipse中對(duì)web工程建立Servlet也是可以看到MyEclipse是默認(rèn)將你創(chuàng)建的Servlet繼承HttpServlet的,如下圖所示:
選擇【Servlet】,彈出,寫(xiě)好包名和我要?jiǎng)?chuàng)建的Servlet名:SecondServlet,如下圖:
可以看到MyEclipse自動(dòng)將你要?jiǎng)?chuàng)建的Servlet的父類(lèi)選擇為HttpServlet。
當(dāng)我們選擇了HttpServlet類(lèi)作為要繼承的Servlet父類(lèi),那么就該知道HttpServlet類(lèi)已經(jīng)復(fù)寫(xiě)了service()方法,這個(gè)方法內(nèi)的代碼會(huì)自動(dòng)判斷用戶的請(qǐng)求方式,如果為GET請(qǐng)求,則調(diào)用HttpServlet的doGet()方法;如果為POST請(qǐng)求,則調(diào)用doPost()方法,因此我們開(kāi)發(fā)的時(shí)候,只需要復(fù)寫(xiě)doGet()方法或doPost()方法,無(wú)需再去復(fù)寫(xiě)service()方法。具體可以看Servlet的API文檔中有關(guān)HttpServlet的詳細(xì)內(nèi)容。
我們勾選doGet方法和doPost方法,其他方法根據(jù)實(shí)際情況添加。接著點(diǎn)擊【Next】,會(huì)看到另一個(gè)設(shè)置窗口:
【Generate/Map web.xml file】:將創(chuàng)建好的Servlet映射到web.xml文件中,這樣能省我們很多事,當(dāng)我們選擇將Servlet映射進(jìn)web.xml文件中時(shí),就可以根據(jù)下面幾個(gè)指定來(lái)設(shè)置映射到web.xml文件中哪些內(nèi)容。
【Servlet/JSP Class Name】:這是作為在web.xml文件中<servlet-class>標(biāo)簽中的內(nèi)容。
【Servlet/JSP Name】:設(shè)置在web.xml文件中<servlet-name>標(biāo)簽中的內(nèi)容。
【Servlet/JSP Mapping URL】:設(shè)置web.xml文件中<servlet-mapping>標(biāo)簽下<url-pattern>標(biāo)簽的內(nèi)容,也就是設(shè)置該Servlet的對(duì)外訪問(wèn)路徑。
【File Path of web.xml】:該web.xml的路徑,一般不用設(shè)置。
點(diǎn)擊完成之后,我們?cè)賮?lái)看看web.xml文件,是的,剛才設(shè)置的Servlet到web.xml文件的映射都已經(jīng)被MyEclipse在web.xml文件中添加好了,為我們省事了不少。如下圖所示:
我們來(lái)看看Servlet中的內(nèi)容:
是的,有點(diǎn)亂,這是因?yàn)镸yEclipse在創(chuàng)建Servlet時(shí)是按模板生成的,這里我們可以將這些不需要的代碼先去除,最后的部分我們?cè)賮?lái)講解如何修改MyEclipse中的Servlet模板。
在這種繼承HttpServlet的Servlet開(kāi)發(fā)中,我們只關(guān)心doGet方法和doPost方法,對(duì)于不知何時(shí)http請(qǐng)求是GET方式何時(shí)是POST方式來(lái)說(shuō),可以使用以下“小聰明”的方式來(lái)滿足在一個(gè)方法中同時(shí)處理GET請(qǐng)求或POST請(qǐng)求:
剛才說(shuō)到在HttpServlet中的service()方法已經(jīng)復(fù)寫(xiě)了其父類(lèi)GenericServlet的service()方法,那我們就來(lái)看一下HttpServlet中的service()方法,將光標(biāo)點(diǎn)擊HttpServlet,然后按下鍵盤(pán)“F3”鍵,會(huì)發(fā)現(xiàn):
缺少Servlet的jar包源碼,這里我們有兩種解決方式:
一、到sun官網(wǎng)或oracle官網(wǎng)下載Servlet源碼;
二、到Apache-Tomcat官網(wǎng)下載Tomcat的源碼,這里我選擇這種方式:
選擇zip格式就可以(貌似tar.gz是給Linux用的)。
下載解壓后,目錄后面是帶有“src”字樣:
那么我們就可以在MyEclipse中點(diǎn)擊“Attach Source”,因?yàn)槭菍?dǎo)入整個(gè)目錄,所以選擇“External Folder”即可,導(dǎo)入之后我們就可以看到HttpServlet的源碼了,看到其service()方法,代碼較長(zhǎng),這里就不附出,但思想就是先獲取請(qǐng)求對(duì)象HttpServletRequest的請(qǐng)求方式,然后用if判斷來(lái)針對(duì)各個(gè)請(qǐng)求調(diào)用不同的方法,如doGet方法或doPost方法。
接下來(lái)我們就可以安心回到剛剛創(chuàng)建的Servlet,在doGet方法中編寫(xiě)代碼,我們就寫(xiě)個(gè)簡(jiǎn)單的返回客戶端一點(diǎn)數(shù)據(jù)好了:
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { OutputStream out = response.getOutputStream(); out.write("Hello servlet again !".getBytes()); }
接著啟動(dòng)服務(wù)器,并將這個(gè)寫(xiě)好的Servlet發(fā)布
最后,我們就能在瀏覽器查看:
記住,在地址欄中輸入完主機(jī)地址和端口(如果有)后,如果web.xml沒(méi)有另外設(shè)置的話,跟的是web項(xiàng)目名稱(chēng)和你在web.xml文件中為該Servlet設(shè)置的對(duì)外訪問(wèn)路徑。
上述內(nèi)容就是servlet如何利用myeclipse進(jìn)行創(chuàng)建,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
網(wǎng)站名稱(chēng):servlet如何利用myeclipse進(jìn)行創(chuàng)建
本文地址:http://jinyejixie.com/article16/ppicdg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、搜索引擎優(yōu)化、網(wǎng)站導(dǎo)航、品牌網(wǎng)站設(shè)計(jì)、企業(yè)建站、App開(kāi)發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)