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

分享

如何在Tomcat上運(yùn)行servlet

 昵稱24204 2007-04-05

如何在Tomcat上運(yùn)行servlet

源作者:未知                   人氣:27581
引言
  最初,Web站點(diǎn)上只有存儲(chǔ)于服務(wù)器文件系統(tǒng)中的靜態(tài)HTML文檔,無(wú)法返回定制信息或把數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)庫(kù)中去。CGI的引入為靜態(tài)的萬(wàn)維網(wǎng)帶來(lái)了生機(jī),但隨著CGI在性能和靈活性方面逐漸顯得陳舊老化,新技術(shù)競(jìng)相取代CGI以作為建立動(dòng)態(tài)Web站點(diǎn)的標(biāo)準(zhǔn)接口,Java servlet可望繼CGI之后,成為最受歡迎的Internet開發(fā)技術(shù)。
一、運(yùn)行環(huán)境的安裝
1、首先應(yīng)該安裝Java Development Kit,又稱Java 2 SDK,最新版為1.4.0,可以從http://java./j2se/下載,安裝在C:\j2sdk下(可以更改)。
2、Tomcat安裝軟件jakarta-tomcat-4.0.4.exe可以從http://jakarta./builds/jakarta-tomcat-4.0/release/v4.0.4/bin/下載。安裝在C:\Tomcat下(可以更改)。
3、通過在C:\Tomcat 4.0\bin\startup.bat文件的頂部添加下面的代碼來(lái)設(shè)置環(huán)境變量TOMCAT_HOME 和JAVA_HOME。
set JAVA_HOME= C:\j2sdk
set TOMCAT_HOME=C:\Tomcat
以上設(shè)置參照自己的安裝路徑。
4、啟動(dòng)Tomcat服務(wù)器,可以用“開始”/“程序”/“Apache Tomcat 4.0”/“Start Tomcat”啟動(dòng)。
為了證實(shí)Tomcat已經(jīng)成功啟動(dòng),試著從瀏覽器地址欄中輸入下面的URL地址:http://localhost:8080/,如果正常運(yùn)行,則顯示Tomcat的歡迎頁(yè)面。
二、Web應(yīng)用程序
Web應(yīng)用程序是共同組成一個(gè)應(yīng)用程序的目錄和文件的層次結(jié)構(gòu)。所有Web應(yīng)用程序不論運(yùn)行在什么服務(wù)器,都使用同樣的標(biāo)準(zhǔn)目錄結(jié)構(gòu)。為了說明,如下的目錄結(jié)構(gòu)顯示了一個(gè)典型的Tomcat安裝,它包括二個(gè)Web應(yīng)用程序(examples和ROOT)。
Tomcat
     bin
     conf
     doc
     lib
     logs
     src
     webapps
          examples
              images
              jsp
             servlets
              WEB-INF
                  classes
                  jsp
         ROOT
             doc
             WEB-INF
                 classes
一個(gè)Web應(yīng)用程序的頂級(jí)目錄(例如/examples、/ROOT)被稱為該Web應(yīng)用程序的文檔根目錄。它是服務(wù)器找到與該Web應(yīng)用程序相關(guān)聯(lián)的HTML、JSP和圖像文件的地方。
進(jìn)行部署的時(shí)候,系統(tǒng)管理員為每個(gè)Web應(yīng)用程序分配一個(gè)惟一的上下文路徑。所有對(duì)這個(gè)上下文路徑的請(qǐng)求都被路由到適當(dāng)?shù)腤eb應(yīng)用程序。例如,examples  Web應(yīng)用程序分配到/examples這個(gè)上下文路徑中,那么下面這個(gè)URL地址會(huì)顯示一個(gè)位于/tomcat/webapps/examples目錄下的index.html文件。
http://localhost:8080/examples/index.html
位于/tomcat/conf目錄的server.xml文件為每個(gè)Web應(yīng)用程序指定了上下文路徑,下面的程序塊來(lái)自于server.xml文件,它把/examples這個(gè)上下文路徑分配給了examples  Web應(yīng)用程序,事實(shí)上,Tomcat為每個(gè)新的Web應(yīng)用程序分配一個(gè)基于其根目錄名稱的上下文路徑。
<Context  path="/examples"  docBase="webapps/examples"  debug="0" reloadable="true">
</Context>
其中程序塊中的path描述給位于docBase的Web應(yīng)用程序分配上下文路徑
docBase描述Web應(yīng)用程序文檔根目錄相對(duì)于Tomcat服務(wù)器主目錄的位置。
另外,可以通過指定一個(gè)空的上下文路徑來(lái)定義一個(gè)默認(rèn)的Web應(yīng)用程序。例如,Tomcat可以按照下面的做法給ROOT  Web應(yīng)用程序分配一個(gè)空的上下文路徑,從而把它安裝成默認(rèn)的Web應(yīng)用程序:
<Context path=""  docBase="webapps/ROOT"  debug="0"  reloadable="true">
</Context>
ROOT  Web應(yīng)用程序用一個(gè)空的上下文路徑進(jìn)行定義,那么所有沒有映射到已定義上下文路徑的請(qǐng)求都將自動(dòng)路由到ROOT目錄。下面的URL地址將返回位于/tomcat/webapps/ROOT目錄的index.xml文件(注意上下文路徑?jīng)]有被指定)
http://localhost:8080/index.xml
前面的目錄樹所示每個(gè)Web應(yīng)用程序都包含一個(gè)/WEB-INF目錄,這個(gè)/WEB-INF目錄對(duì)于開發(fā)者而言有著不同尋常的重要性,它包含有下面這些重要組成元素:
/classes目錄:此目錄包含著Web應(yīng)用程序需要的所有Java類文件,包括所有的servlet和非servlet類。
/lib目錄:此目錄包含著Web應(yīng)用程序所需要的所有JAR文件,其中包括JDBC驅(qū)動(dòng)程序或者第三方類庫(kù)。
/web.xml 文件:稱為部署描述符,是一個(gè)XML文件,用來(lái)描述servlet和組成Web應(yīng)用程序其他組件,以及所有的初始化參數(shù)、servlet名稱、servlet  URL映射和安全性限制等。
有一點(diǎn)很重要,需要注意,即所有的servlet都應(yīng)該存放在Web應(yīng)用程序的/WEB-INF/classes目錄中,而且web.xml 文件控制著對(duì)servlet的訪問。
三、調(diào)用servlet
已經(jīng)知道servlet存放在文件系統(tǒng)的何處,接下來(lái)就分析它們被如何調(diào)用了,對(duì)于Tomcat,用下面的URL格式調(diào)用servlet:
http://server:port/context_path/servlet/servlet_name
URL的http字符串表明訪問URL要使用http協(xié)議,server指向服務(wù)器的主機(jī)名,:port指明這一連接的端口號(hào),context_path表示W(wǎng)eb應(yīng)用程序的上下文路徑,/servlet部分告知Tomcat某個(gè)servlet正在被引用,servlet_name表示被Tomcat引用的servlet類名,注意:完整的軟件包信息必須包含在類名中,例如:SnoopServlet在com.insideservlets軟件包中,那么servlet類名就是com.insideservlets.SnoopServlet。
當(dāng)準(zhǔn)備運(yùn)行servlet的時(shí)候,必須把它存放到其中一個(gè)Web應(yīng)用程序的/WEB-INF/classes目錄中,這樣就可以通過Web應(yīng)用程序的上下文路徑和該servlet名來(lái)調(diào)用該servlet了。
1、在瀏覽器中直接調(diào)用
例1,把命名為SnoopServlet的servlet放到examples  Web應(yīng)用程序的/WEB-INF/classes目錄中,就可以用下面的URL從瀏覽器來(lái)調(diào)用它了:
http://localhost:8080/examples/servlet/SnoopServlet
例2,如果把命名為SnoopServlet的servlet放到ROOT  Web應(yīng)用程序的/WEB-INF/classes目錄中,就可以用下面的URL從瀏覽器來(lái)調(diào)用它了:
http://localhost:8080/servlet/SnoopServlet
注意:ROOT Web應(yīng)用程序是默認(rèn)Web應(yīng)用程序,所以URL中不需要上下文路徑。
2、由于servlet是通過Web服務(wù)器進(jìn)行調(diào)用的,因此必須在html頁(yè)面中鏈接它
在html頁(yè)面中可以通過<FORM>和<A>標(biāo)記調(diào)用,在<FORM>中通過ACTION屬性調(diào)用,格式如下:
ACTION="http://server:port/context_path/servlet/servlet_name"
在<A>標(biāo)記中通過HREF屬性調(diào)用,格式如下:
HREF="http://server:port/context_path/servlet/servlet_name"
當(dāng)然http://server:port部分可以省略。
對(duì)于例1用<FORM>標(biāo)記的頁(yè)面調(diào)用方法為:
<FORM ACTION="http://localhost:8080/examples/servlet/SnoopServlet">或
<FORM ACTION="examples/servlet/SnoopServlet">
對(duì)于例1用<A>標(biāo)記的頁(yè)面調(diào)用方法為:
<A HREF="http://localhost:8080/servlet/SnoopServlet">或
<A HREF="servlet/SnoopServlet">
此外,還可以通過在/WEB-INF/web.xml 中定義servlet名稱、servlet映射來(lái)調(diào)用servlet,具體方法不再介紹,有興趣可參考有關(guān)書籍。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(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)論公約

    類似文章 更多