- JSP從零開始學(視頻教學版)
- 劉鑫編著
- 1476字
- 2021-03-12 12:31:56
2.2 安裝并配置Tomcat服務器
一段寫出的代碼,要想轉換成網頁,就需要一個Web應用服務器。與ASP.NET匹配的Web服務器一般首選是IIS,而與JSP匹配的首選是Tomcat,本節就介紹Tomcat服務器。
2.2.1 下載并安裝Tomcat服務器
Tomcat是輕量級的Web應用服務器,可以從官網http://tomcat.apache.org/下載最新的Tomcat服務器版本,本書用的是Tomcat 7.0版本。下載完成后直接解壓Tomcat文件到指定的目錄下,例如:C:\Tomcat\apache-tomcat-7.0.62中。Tomcat目錄結構如圖2.5所示。

圖2.5 Tomcat目錄結構
下面介紹Tomcat的目錄結構:
●bin文件夾,包含Tomcat服務器啟動和終止服務器的批處理文件。例如:startup.bat、startup.sh、shutdown.bat、shutdown.sh、catalina.bat、catalina.sh等。其中startup.bat、shutdown.bat、catalina.bat是Windows中的批處理文件;startup.sh、shutdown.sh、catalina.sh是Linux中的腳本文件。
●conf文件夾,包含Tomcat的配置信息。主要有server.xml和web.xml這兩個配置文件。在server.xml中可以更改服務端口和改變Web默認的訪問目錄,后面的小節將介紹如何修改。
●lib文件夾,存放tomcat運行中需要的jar包文件,例如:catalina.jar、servlet-api.jar、tomcat-dbcp.jar等jar包,正因為有這些包的支持,Tomcat才可以運行Web應用程序。
●logs文件夾,存放執行Tomcat的日志文件。
●temp文件夾,存放Tomcat的臨時文件信息。
●webapps文件夾,是Tomcat默認的Web文件夾。本身自帶兩個admin應用和manager應用。開發人員可以直接將Web應用存放在該文件夾下。
●work文件夾,存放Tomcat執行應用后的緩存。
2.2.2 Tomcat的文件結構
Tomcat服務器中,要經常修改其配置信息來滿足系統的需求,例如在server.xml中可以更改服務端口和改變Web默認的訪問目錄。
修改端口號,方法如下:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8"/>
修改port端口為8088。修改完畢,保存server.xml,然后重啟Tomcat服務器,這樣服務器的端口就更改為8088了。
修改Web默認的訪問目錄,方法如下:
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
修改appBase中的文件夾地址。例如:將appBase的屬性值webapps改為d:\test,修改后的文件如下:
<Host name="localhost" appBase="d:\test" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
這樣就可以將Web默認的訪問目錄更改為d:\test。那么以后加載Web應用程序就會在該目錄下再創建目錄。
建立自身的Web目錄。開發人員可以將應用部署在Tomcat服務器的默認webapps目錄下,也可以部署在自己創建的目錄下。方法如下:
首先創建自身的目錄D:\test,其次配置Web目錄,在server.xml文件的末尾</HOST>中加入如下語句:
<Context path="text" docBase="D:\test" debug="0" reloadable="true"></Context>
該語句的作用是將目錄D:\test設置為Tomcat服務器的Web目錄,將該文件的訪問路徑設置為“/text”。屬性docBase的值為“D:\test”,它是指應用的物理路徑。修改后將server.xml文件進行保存。假設現在有個test.jsp頁面在D:\test目錄下,那么頁面的訪問路徑就為:http://localhost:8080/text/test.jsp。
在bin文件夾下,可以修改catalina.bat或者catalina.sh來更改Tomcat啟動配置信息。例如增加Java運行內存:
set JAVA_OPTS=-XX:PermSize=512M -XX:MaxPermSize=512m -Xms512m -Xmx1024m
更多的修改內容請參見Tomcat官網說明。
2.2.3 Tomcat的工作原理
前面我們說過Tomcat是一個Web服務器,那它的作用是什么?它又是如何幫助外部網頁訪問我們自己服務器上的網頁的?
如果想讓某臺計算機上的一個目錄內容,被外面的Web瀏覽器通過HTTP協議訪問,就要在這臺計算機上安裝和啟動一個Web服務器軟件,還要將該目錄映射成一個虛擬的Web站點目錄,這個Web站點目錄通常稱為虛擬目錄。
一個Web站點上只能有一個虛擬目錄的根目錄,其他的虛擬目錄都必須是該根目錄的子目錄。一般根目錄用“/”符號表示,根目錄與該根目錄下的子目錄或資源文件也以“/”符號進行分割。如圖2.6所示的映射中,假設D:\test文件夾映射成Web站點的根目錄,當計算機的域名為http://www.student.com時,那么瀏覽器訪問http://www.student.com/test.html就可以得到D:\test\test.html文件的內容,如果訪問http://www.student.com/test.html/student/test.html就可以得到D:\test\student\test.html文件的內容。

圖2.6 映射示意圖
一個文件系統目錄可以被映射成一個或多個虛擬目錄,但是一個虛擬目錄只能對應一個本地文件系統目錄,如圖2.7所示。

圖2.7 映射路徑與本地文件系統多對一關系
當瀏覽器請求某個路徑資源時,一般按照最長路徑匹配原則進行處理。首先以請求路徑中最深子目錄作為一個虛擬子目錄名稱,查看是否存在這個虛擬子目錄:如果不存在則查找是否存在上一級目錄名稱的虛擬子目錄;如果找到匹配的虛擬目錄后,則進入該虛擬目錄中查找指定名稱的資源。
提示
Tomcat中默認的根目錄是webapps,上一節已經介紹了如何修改根目錄,這里不再贅述。