Tomcat配置和Web應用程序開發

tomcat是一個專門用於web服務的服務器軟件.
    1.運行 :
設置完畢後就能夠運行 tomcat服務器了,進入tomcat的bin目錄,windows下用startup啓動tomcat,相應的關閉tomcat的命令爲shutdown和shutdown.sh。啓動後能夠在瀏覽器中輸入[url]http://localhost:8080/[/url]測試。你能夠測試其自帶的jsp和servlet示例。
 
    [url]http://www.it315.org/a.html[/url]
    瀏覽器發給服務器的信息爲: GET /a.html HTTP/1.1
    服務器會去根目錄下找 a.html文件。此根目錄是「TOMCAT安裝目錄\webapps\ROOT」。
    若是 /表明「C:\abc」
    那麼就去找 C:\abc\a.html文件。
 
    虛擬目錄:
    [url]http://www.it315.org/xxx/a.html[/url]
    若是把上面的「 /xxx」映射成了「d:\」
    那麼就去找 D:\a.html文件。
 
    127.0.0.1:表明本地
    localhost:一般狀況下配置爲本地,實質上不是。能夠在 windows\system32\drivers\etc\hosts文件改。
    [url]http://www.it315.org:8080[/url]會解析 [url]www.it315.org[/url],首先把[url]www.it315.org[/url]在hosts裏面所對應的IP地址,找不到再去 找dns
 
    一個站點下能夠有多個虛擬目錄,每一個虛擬目錄就是一個獨立的 WEB應用程序。每一個web應用程序都有本身的配置信息。
 
    jar -cvf fileName.war 被打包的文件
    jar -cvf fileName.war -C 被打包的文件夾 被打包的文件夾中的文件
 
    servlet是被 web服務器去調用的。
 
◆HTTP請求、響應和頭信息:
1.客戶端發送的請求消息爲文本流,由如下內容組成:
請求行
包括方法、統一資源表示符、HTTP協議版本。
頭信息
              典型的請求消息相似如下內容:
             
GET p_w_picpath/bar01.jpg HTTP/1.1
User-Agent:Mozilla/4.0 (compatible;MSIE 4.0 : Windows 2000)
Accept:p_w_picpath/gif,p_w_picpath/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」>
2. 也可使用jar命令將C:\WebDemo目錄打包成C:\WebDemo.jar文件。步驟以下:
1) 啓動命令行窗口,進入C:\WebDemo目錄
2) 執行以下命令:jar –cvf WebDemo.war .
注意後面的點,它表明當前目錄,上面的命令將C:\WebDemo中全部內容壓縮成WebDemo.war文件,但不包含C:\WebDemo目錄自己。
注意:此步驟在執行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
 
<!—註冊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欄中輸入 [url]http://127.0.0.1:8080/demo/test.html[/url]回車,
網頁中顯示出了HelloWorld,若是有錯可能因爲一下緣由:Tomcat沒啓動,大小寫有誤等等。
相關文章
相關標籤/搜索