Tomcat入門指南


轉自javaresearch.com由timgball 整理

Tomcat是一個免費的開源Web服務器,最新版本是5.5.1,支持Servlet2.4,JSP2.0,非常適合初學者學習Java Web開發。下面是一個簡單的Tutorial:[安裝Tomcat],在安裝Tomcat之前,必須首先安裝JDK1.4,因為Tomcat本身是純Java程序,需要JVM運行,此外JSP頁面需要javac來編譯運行,因此必須安裝JDK(單裝JRE不行)。然后從Tomcat官方站點下載最新版的Tomcat:Windows版本:http://apache.linuxforum.net/dist/jakarta/tomcat-5/v5.5.1/bin/jakarta-tomcat-5.5.1.zip ,Linux版本:http://apache.linuxforum.net/dist/jakarta/tomcat-5/v5.5.1/bin/jakarta-tomcat-5.5.1.tar.gz
Tomcat不需安裝,直接解壓到某個目錄即可(請注意整個路徑不要有中文名)。

[配置Tomcat]
先設置如下環境變量:
JAVA_HOME = <JDK安裝目錄>
TOMCAT_HOME = <Tomcat根目錄>
在Path最后附加:
Path = ......;%JAVA_HOME%/bin

如果使用linux,請用export設置環境變量。

然后打開控制台窗口,輸入javac,如果能夠運行,說明能找到JDK的編譯器,輸入java -version,如果顯示1.4.x_xx則配置正確,否則檢查是否安裝了低版本的JDK(比如1.3版本),如果有低版本的JDK,把它從Path中移除即可。

[啟動和關閉Tomcat]
打開目錄%TOMCAT_HOME%/bin,運行startup.bat(linux下是startup.sh),稍等片刻,直到出現信息: Server startup in XXXXX ms表示啟動成功!要關閉Tomcat,最好不要直接關掉控制台窗口,運行%TOMCAT_HOME%/bin/shutdown.bat(linux下是shutdown.sh)。

[第一個JSP程序]
運行在Tomcat的Web程序全部放在%TOMCAT_HOME%/webapps下,每個應用單獨一個目錄,我們開始寫第一個"Hello, world"JSP頁面。
首先,我們在%TOMCAT_HOME%/webapps下新建一個hello目錄,作為整個Web應用程序的根目錄,然后在hello目錄下新建hello.jsp,用任何文本編輯器輸入以下內容:
<% out.println("Hello, world."); %>
然后啟動Tomcat,打開瀏覽器,輸入http://localhost:8080/hello/hello.jsp,稍等片刻,瀏覽器顯示“Hello, world.”我們的第一個JSP運行成功!
 [Web開發基礎]
J2EE的Web應用程序有標准的格式,我們先創建如下結構的目錄(請嚴格區分大小寫):
hello |
 +- WEB-INF     |
 +- classes    |
 +- lib
 +- web.xml
所有需要的class文件均以WEB-INF/classes/為根目錄按包名存放,所有的jar文件全部放在WEB-INF/lib下,Web服務器(比如Tomcat)會自動把classes和lib下的所有jar文件動態添加到CLASSPATH中,其中classes目錄優先級高,如果classes和lib中某個jar的class全名相同,則只會找到classes下的文件。
WEB-INF/web.xml是標准配置文件,負責注冊Servlet,Filter及其它用到的資源。在我們的hello應用中,因為沒有web.xml,Tomcat會使用缺省的配置文件(什么也不配置)。
一般說來,自己寫的class包括servlets,filter,javaBean等編譯后放在classes目錄下,用到的第三方jar(如struts.jar)放在lib下。
JSP文件可放在根目錄下的任意位置,但是位置不同會影響URL的格式。以上面的hello應用為例,我們指定hello/hello.jsp,則URL為http://localhost:8080/hello/hello.jsp,若是放在hello/admin/hello.jsp,則相應的URL變為http://localhost:8080/hello/admin/hello.jsp,若是放在WEB-INF下,則用戶不可直接訪問此JSP文件,只能通過RequestDispatch間接訪問,此方法可向用戶屏蔽真實的URL,在struts等Web框架中被廣泛使用。

[發布Web應用程序]
發布Web應用程序非常簡單,直接使用jar命令將整個hello目錄打包,命名為xxx.war,然后復制到另一台計算機的%TOMCAT_HOME%/webapps/下(或者別的Web服務器如Resin,WebLogic也可),啟動服務器,它會自動找到這個war文件並解壓安裝。

 

./catalina.sh start  開啟tomcat服務

./catalina.sh stop   關閉tomcat服務

 

 

 

 

 

Tomcat容器入門介紹

Tomcat環境配置

PS:JDK的安裝這里就不講了,找到安裝包直接下一步下一步就行了。

1、配置JDK

在Windows10下,找到環境變量

在環境變量中添加JDK主目錄

格式為:JAVA_HOME= 指向你的jdk的主目錄(並不是bin文件目錄)

    在環境變量中添加路徑

格式為:path = %JAVA_HOME%\bin;

    在環境變量中添加classpath

格式為:classpath: .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

至此,JDK就配置完了。

PS:如果在不配置JAVAHOME的前提下可以用如下方法啟動tomcat

在startup.bat的第25行中添加set JAVA_HOME=JKD路徑

2、啟動tomcat

    到 tomcat 主目錄下的bin/startup.bat點擊啟動

3、驗證是否安裝成功

    在瀏覽器中輸入http://127.0.0.1:8080(8080是默認端口,如果該端口被占用需要到主目錄/conf/server.xml中改端口號)

出現這個界面,就表示tomcat已經配置成功了。

Tomcat配置異常及其解決

1、JAVA_HOME 配置錯誤,或者沒有配置 

   這時候,可以按照上面的步驟在來一次,在命令行中輸入java -version,如果顯示

就表示成功了。

2、如果你的機器已經占有了8080 端口,則無法啟動

解決方法

(1) 你可以8080 先關閉

netstat –an 

netstat –anb 來查看誰占用該8080

(2) 主動改變tomcat的端口.

到 conf/server.xml 文件中修改

3、 能夠正常啟動,但是會導航到另外一個頁面

    去修改工具->管理加載項,把默認的導航給禁用即可

4、瀏覽器顯示404 Not Found

    在訪問 tomcat時候,一定要保證 tomcat 服務器是啟動,不然就會出現這種錯誤。

Tomcat的目錄結構文件

bin: 啟動和關閉tomcat的bat文件

conf: 配置文件 

-->*server.xml *: 該文件用於配置和 server 相關的信息, 比如 tomcat啟動端口后,配置Host,  配置Context 即web應用 

-->web.xml : 該文件配置與 web應用(web應用就相當於是一個 web站點)

-->tomcat-users.xml: 該文件用戶配置tomcat 的用戶密碼 和 權限

lib 目錄: 該目錄放置運行tomcat 運行需要的jar包

logs 目錄:存放日志, 當我們需要去查看日志的時候,很有用!,當我們啟動tomcat錯誤時候,可以查詢信息.

webapps 目錄: 該目錄下,放置我們的web應用(web 站點), 比如:

建立  web1 目錄  下面放置我們的html 文件 jsp 文件..圖片... 則 web1就被當做一個web應用管理起來(☞ 特別說明tomcat 6.0 以后支持 tomcat 5 版本 還有別的設置)

work: 工作目錄: 該目錄用於存放jsp被訪問后 生成的對應的 server文件 和.class文件

如何訪問一個web應用的某個文件

PS:想要訪問一個WEB應用中的某個文件可以采用url(Uniform Resource Locator)統一資源定位符來訪問,其格式如上。

Tomcat應用部署目錄結構規范

Tomcat管理虛擬目錄

    需求:當希望將web應用部署到非webapps目錄下時,怎么解決這問題。

PS:可以通過虛擬目錄配置技術解決。

配置步驟

    1、找到server.xml文件

    2、編輯host節點,添加Context path

<Context path="/應用名" docBase="web應用所在的絕對路徑"/>

例如:要訪問該web應用根目錄下的hello.html文件

實際訪問時輸入的地址:http://localhost:8088/應用名/hello.html

   3、重啟、重新部署生效

context的幾個屬性的說明

path: 應用名稱

docbase:  web應用所在的絕對路徑

reloadable: 如果設為ture ,表示 tomcat 會自動更新 web應用,但是這個開銷大,建議在開發過程中,可以設為true, 但是真的發布了,則應當設為false

upackWAR: 如果設為 ture ,則自動解壓,否則不自動解壓.

PS:war包的打包和Tomcat怎么部署war包可以使用搜索引擎找到。

配置域名

實現的步驟如下:

(1) 在C:\WINDOWS\system32\drivers\etc 下的host文件 添加127.0.0.1 www.myweb.com

(2) 在tomcat 的server.xml文件添加主機名 

<Host name="www.myweb.com" appBase="d:\web3”> <Context path="/" docBase="d:\web3" /> </Host>

(3) 在d:\web3 加入了一個 /WEB-INF/web.xml 把 hello2.html設為首頁面,如果連端口都不希望帶,則可以把tomcat的啟動端口設為80即可.

(4) 重啟生效

Tomcat框架機制

Tomcat配置默認主機

在tomcat/conf/server.xml 文件

<Engine name="Catalina" defaultHost="主機名">

如:<Engine name="Catalina" defaultHost="www.myweb.com">

----------參考《韓順平.細說Servlet》

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM