Servlet怎么運行

本篇內(nèi)容介紹了“Servlet怎么運行”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!

創(chuàng)新互聯(lián)公司是創(chuàng)新、創(chuàng)意、研發(fā)型一體的綜合型網(wǎng)站建設(shè)公司,自成立以來公司不斷探索創(chuàng)新,始終堅持為客戶提供滿意周到的服務(wù),在本地打下了良好的口碑,在過去的10余年時間我們累計服務(wù)了上千家以及全國政企客戶,如成都公路鉆孔機等企業(yè)單位,完善的項目管理流程,嚴格把控項目進度與質(zhì)量監(jiān)控加上過硬的技術(shù)實力獲得客戶的一致夸獎。

1. Servlet教程之Servlet的基礎(chǔ)結(jié)構(gòu)

下面我們來談?wù)勌幚碛脩鬐ET請求的最簡單的servlet框架。GET請求就是用戶在瀏覽器的地址欄里輸入一個地址、在網(wǎng)頁上點擊連接或產(chǎn)生一個沒有定義方法的HTML表單后產(chǎn)生的請求。Servlets還能輕松處理表單的提交(POST),關(guān)于處理表單提交我們將在后面幾部分談到。

import java.io.*;   import javax.servlet.*;   import javax.servlet.http.*;   public class SomeServlet extends HttpServlet {   public void doGet(  HttpServletRequest request,   HttpServletResponse response)   throws ServletException, IOException {   // 用 "request" 讀取http信息頭(如cookie)   // 和HTML表單數(shù)據(jù) (如用戶輸入和提交的數(shù)據(jù))   // 用"response"指定http響應(yīng) 和http信息頭   // (如指明信息的類型、設(shè)定cookie).    PrintWriter out = response.getWriter();   // 用 "out"輸出內(nèi)容到瀏覽器   } }

不管是用doGet還是doPost方法,servlet都要用到HttpServlet擴展類。這些方法可分為兩類:HttpServletRequest和HttpServletResponse。HttpServletRequest含有獲得表單數(shù)據(jù)、HTTP信息頭等信息的方法。 HttpServletResponse則包含指明HTTP響應(yīng) (200, 404,等。)、信息頭(Content-Type, Set-Cookie, 等。)的方法,更重要的是你能使用PrintWriter方法向客戶端輸出信息。注意doGet和doPost方法會拋出兩個異常,所以必須在定義里包含他們。要用到PrintWriter、HttpServlet和HttpServletRequest, HttpServletResponse方法還必須分別引入java.io、javax.servlet和javax.servlet.http。 一般來說,doGet和doPost是被service方法調(diào)用的,但有時候你可能想越過service方法而直接使用自己定義的service方法,比如定義一個既能處理GET也能處理POST請求的servlet。

2. Servlet教程之一個簡單的Servlet--產(chǎn)生存文本

◆下面是一個產(chǎn)生存文本的簡單servlet的實例。

HelloWorld.java    import java.io.*;   import javax.servlet.*;   import javax.servlet.http.*;   public class HelloWorld extends HttpServlet {   public void doGet(HttpServletRequest request, HttpServletResponse response)   throws ServletException, IOException {  PrintWriter out = response.getWriter();   out.println("Hello World");   }   }

◆編譯和安裝Servlet

注意,安裝servlet的方法會因web服務(wù)器不同而不同。詳細請參考您使用的web服務(wù)器所帶的安裝文檔。Java Web 服務(wù)器即Java Web Server(JWS)2.0上帶有聯(lián)機實例。在JWS里,servlet程序必須JWS放在安裝目錄的servlets目錄下才能運行。如果web服務(wù)器由多人使用并且沒有好的虛擬服務(wù)器的下層結(jié)構(gòu)來自動避免沖突,你也可以像我一樣在servlets目錄下創(chuàng)建一個獨立包(我取名叫hall)即在servlets目錄下創(chuàng)建一個hall子目錄,并把你寫的servlet放在該目錄下。這里我把HelloWorld.java放在hall目錄下。其他大多數(shù)服務(wù)器的安裝都大同小異,本教程的servlet和JSP例子都在BEA Weblogic和IBM的WebSphere 3.0測試通過。其中WebSphere對于虛擬服務(wù)器有一套優(yōu)秀的機制,所以沒有必要為了名字的沖突而單獨使用包。

如果你以前從未用過包,那么有兩種在包內(nèi)編譯類文件的方法可以使用。

一種方法就是在CLASSPATH里設(shè)置好指向包含有你的servlet文件的目錄,這樣就可以在該目錄下正常編譯。舉個例子,如果你在Windows下的servlet的目錄是C:JavaWebServerservlets,包名(即子目錄)是hall, 那么在dos窗口設(shè)置如下:

DOS> set CCLASSPATH=C:JavaWebServerservlets;%CLASSPATH%   DOS> cd C:JavaWebServerservletshall   DOS> javac YourServlet.java

***步、設(shè)置路徑。***一步到位,免得以后每次都要重新打開一個dos窗口。Windows 95/98系統(tǒng)下在autoexec.bat文件里加入"set CLASSPATH=..."表達式,將CLASSPATH指向servlet.jar和jsp.jar。在NT下,開始菜單-設(shè)置-控制面板,選擇“系統(tǒng)”,選擇“環(huán)境”,然后輸入變量名和變量值。注意如果你的包名是 name1.name2.name3的格式,還應(yīng)該設(shè)置CLASSPATH指向包的頂層(即name1)。

第二種方法是轉(zhuǎn)到包的上層目錄,然后執(zhí)行"javac directoryYourServlet.java" (注意Windows下是反斜桿)或者unix下"javac directory/YourServlet.java" (注意Unix下是正斜桿)。再舉個例子,比如你在windows下的servlet目錄是C:JavaWebServerservlets,包名也就是子目錄名是hall,那么執(zhí)行下列操作:

DOS> cd C:JavaWebServerservlets   DOS> javac hallYourServlet.java

注意Windows下,大部分JDK 1.1版本的javac都要求反斜桿,后來在JDK 1.2里得到了修正,但是由于很多web服務(wù)器是根據(jù)JDK1.1來配的,所以為了方便起見許多servlet作者還是堅持反斜桿。
javac的-d選項可以用來指定將.class文件和源碼文件放在不同的地方。

◆Servlet教程運行Servlet

Servlet一般是放在JWS安裝目錄下的servlets目錄下,并通過 http://host/servlet/ServletName調(diào)用。注意這里的Servlets目錄中的Servlets帶有"s",而URL地址欄里的則沒有。

上面的例子放在hall包里,所以這樣調(diào)用:http://host/servlet/hall.HelloWorld。其他服務(wù)器在Servlet放置目錄和調(diào)用上可能會稍有不同。大部分服務(wù)器都允許你定義servlet目錄的映射,因此一個servlet也可以通過http://host/any-path/any-file.html調(diào)用。具體得看不同服務(wù)器,詳細可以查看服務(wù)器自帶的文檔。

“Servlet怎么運行”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!

文章名稱:Servlet怎么運行
新聞來源:http://www.muchs.cn/article32/pgdgsc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊、建站公司外貿(mào)建站、服務(wù)器托管全網(wǎng)營銷推廣網(wǎng)站改版

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)