Tomcat配置和Web應用程式開發__Web

來源:互聯網
上載者:User
  ◆ tomcat是一個專門用於web服務的伺服器軟體.     1.運行 : 設定完畢後就可以運行 tomcat伺服器了,進入tomcat的bin目錄,windows下用startup啟動tomcat,相應的關閉tomcat的命令為shutdown和shutdown.sh。啟動後可以在瀏覽器中輸入http://localhost:8080/測試。你可以測試其內建的jsp和servlet樣本。       http://www.it315.org/a.html     瀏覽器發給伺服器的資訊為: GET /a.html HTTP/1.1     伺服器會去根目錄下找 a.html檔案。此根目錄是“TOMCAT安裝目錄/webapps/ROOT”。     如果 /代表“C:/abc”     那麼就去找 C:/abc/a.html檔案。       虛擬目錄:     http://www.it315.org/xxx/a.html     如果把上面的“ /xxx”映射成了“d:/”     那麼就去找 D:/a.html檔案。       127.0.0.1:代表本地     localhost:通常情況下配置為本地,實質上不是。可以在 windows/system32/drivers/etc/hosts檔案改。     http://www.it315.org:8080會解析 www.it315.org,首先把www.it315.org在hosts裡面所對應的IP地址,找不到再去 找dns       一個網站下可以有多個虛擬目錄,每個虛擬目錄就是一個獨立的 WEB應用程式。每個web應用程式都有自己的配置資訊。       jar -cvf fileName.war 被打包的檔案     jar -cvf fileName.war -C 被打包的檔案夾 被打包的檔案夾中的檔案       servlet是被 web伺服器去調用的。   ◆HTTP請求、響應和頭資訊: 1.用戶端發送的請求訊息為文字資料流,由以下內容組成: 請求行 包括方法、統一資源表示符、HTTP協議版本。 頭資訊               典型的請求訊息類似以下內容:              
GET image/bar01.jpg HTTP/1.1 User-Agent:Mozilla/4.0 (compatible;MSIE 4.0 : Windows 2000) Accept:image/gif,image/jpeg,text/*,*/*  
第一行使用GET方法擷取bar01.jpg檔案,並指定正在使用的是HTTP協議1.1版本,後續行包括頭資訊,User-Agent頭指示用戶端使用的瀏覽器,Accept頭提供有關用戶端可以接受的MIME類型列表,在頭資訊之後,用戶端發送一個空白行,指示訊息請求結束,如果有表單等內容則將表單內容作為實體在空白行後面一起提交。 2.請求訊息由伺服器經一步處理,並產生相應的相應訊息,響應訊息由以下元素組成: 狀態行 頭資訊 實體內容(即網頁中要顯示的內容) 以下是一個典型的響應訊息樣本:         
HTTP/1.1 200 OK Server:JavaWebServer Last-modified:Tuesday,07-Sep-04 1:14:34 GMT Content-length:100 Content-type:text/plain   <html> ……………… ……………… </html>
第一行為狀態行,其中的狀態代碼200表示已成功處理請求,因此描述為“OK”,404是找不到網頁時常遇到的狀態代碼,接下來一直到空白行之前都是頭資訊。包括伺服器使用的軟體,檔案最後修改時間,長度及內容的類型等資訊,空白行是實體內容。   ◆     WEB應用程式: 基於 java的WEB應用程式由Servlet、Jsp、圖象、HTML、JavaBean、Applet等組成。要部署一個WEB應用程式一種簡便的方法就是將所有與WEB應用程式關聯的檔案打包成一個.war檔案,與Servlet規範相容的所有Web容器都支援.war檔案。 一個 WEB應用程式都有一個頂層目錄,一般由以下部分組成: 1. 靜態檔案:包括 HTML檔案和圖象等。 2. JSP分頁檔 3. WEB-INF檔案夾:注意,該目錄不能被引用。由以下部分組成: ●     classes目錄:Servlet類、JavaBean類和其他所有類檔案。 ●     lib目錄:包含WEB應用程式所需的所有.jar檔案。例如資料庫連接包等。 ●     tags目錄:包含自訂標籤提供實現的tag檔案 ●     web.xml:Web應用的部署描述符檔案。該檔案包含有關WEB應用程式(如要顯示的預設頁、要載入的Servlet等)的中繼資料資訊   ◆     設定WEB網站的虛擬子目錄: 1. 將本機電腦上C:/WebDemo目錄映射成為web網站的/demo虛擬子目錄可以如下配置:開啟Tomcat安裝目錄/conf/server.xml檔案,在<host>元素中間加上一行: <Context path=”/demo” decBase=”C:/WebDemo” debug=”0”> 啟動Tomcat,在IE地址欄中輸入 http://127.0.0.1:8080/demo就能看到C:/WebDemo下面的所有檔案了。例如此目錄下有demo.html檔案,單擊它就能看到demo.html中的內容了。 2. 也可以使用jar命令將C:/WebDemo目錄打包成C:/WebDemo.jar檔案。步驟如下: 1) 啟動命令列視窗,進入C:/WebDemo目錄 2) 執行如下命令:jar –cvf WebDemo.war . 注意後面的點,它代表目前的目錄,上面的命令將C:/WebDemo中所有內容壓縮成WebDemo.war檔案,但不包含C:/WebDemo目錄本身。 3) 將WebDemo.war移到Tomcat安裝目錄/webapps目錄下,重啟Tomcat,在IE地址欄中輸入 http://127.0.0.1:8080/WebDemo就能看到C:/WebDemo下面的所有檔案了。例如此目錄下有demo.html檔案,單擊它就能看到demo.html中的內容了。 注意:此步驟在執行jar命令時如果此目錄的WEB-INF檔案夾中沒有web.xml檔案,Tomcat將使用預設的web.xml檔案內容,如果有則以此web.xml檔案為準,所以此web.xml檔案必須書寫正確(包括文法和配置)。 3. 也可以直接把C:/WebDemo拷到Tomcat安裝目錄/webapps目錄下,但是必須有一個WEB-INF目錄,如果WEB-INF目錄下有web.xml檔案,此web.xml檔案必須書寫正確(包括文法和配置)。 ◆     下面是一個簡單的servlet檔案編寫、編譯、註冊和啟動並執行過程: 1.首先建立一個WebRoot目錄,此目錄下檔案結構如下: WebRoot |—WEB-INF檔案夾               |—classes檔案夾               |            |-HelloServlet.class檔案                 |-web.xml檔案               2.編寫一個servlet檔案,範例程式碼如下:               //匯入一些要用到的類               import java.io.IOException; import java.io.PrintWriter;   import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;                             //繼承HttpServlet public class HelloServlet extends HttpServlet {                        private static final long serialVersionUID = 1L;                        //重寫父類中的service方法                      @Override                      protected void service(HttpServletRequest request,                             HttpServletResponse response) throws ServletException, IOException {                             //從HttpServletResponse中獲得一個輸出資料流                             PrintWriter out = response.getWriter();                             out.println("<html>");                             out.println("<body>Hello World</body>");                             out.println("</html>");                             out.close();                      } } 3.編譯(必須要把 Tomcat安裝目錄/common/lib/servlet-api.jar設定到classpath中),沒錯誤後把HellpServlet.class放到上面的classes目錄下。 4.寫web.xml檔案,範例程式碼如下: <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee        http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">   <!—註冊servlet-->        <servlet>               <servlet-name>AnyName</servlet-name>―――――――――|               <servlet-class> HelloServlet</servlet-class>                             |                    </servlet>                                                                                    |名字                                                                                                          |必須 <!—指定映射到此servlet的url-->                                                       |一致        <servlet-mapping>                                                                        |               <servlet-name>AnyName</servlet-name>――――――――― |               <url-pattern>/demo/test.html</url-pattern>        </servlet-mapping>   </web-app> 5.運行,啟動Tomcat,在IE欄中輸入 http://127.0.0.1:8080/demo/test.html斷行符號, 網頁中顯示出了HelloWorld,如果有錯可能由於一下原因:Tomcat沒啟動,大小寫有誤等等。  

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.