一·Tomcat 安裝
1、Toncat下載
通過訪問Tomcat官方網站下載Tomcat文件。
下載地址:http://tomcat.apache.org/
Tomcat提供了壓縮版和安裝版,還區分 32 位和 64 位系統版。下載的時候注意分辨!
2、Tomcat安裝包分析
我下載的是Tomcat的壓縮包版本,在解壓完Tomcat的壓縮包后出現一下文件。

下面是對各個文件夾的說明:
➢ bin:存放啟動和關閉 Tomcat 的腳本文件。*.sh 文件用於 Unix 系統;*.bat 文件用於 Windows 系統。
➢ conf:存放 Tomcat 服務器的各種配置文件
➢ lib:存放 Tomcat 服務器支撐的 jar 包
➢ logs:存放 Tomcat 的日志文件
➢ temp:存放 Tomcat 運行時產生的臨時文件
➢ webapps:web 應用存放目錄,即供外界訪問的 web 資源的存放目錄
➢ work:Tomcat 的工作目錄
至此,Tomcat的安裝告一段落,下面我們進行Tomcat的配置。
二·Tomcat文件配置
首先我們進行環境變量的配置
(1)添加環境變量 CATALINA_HOME(Tomcat的別稱為Catalina,此處用到的就是這個名字),值為 Tomcat 的安裝路徑。
例如:D:\Tomcat\apache-tomcat-8.5.76
(
2)修改環境變量 Path,增加“%CATALINA_HOME%\bin”(此處也可以直接吧bin目錄的路徑復制到Path變量中,例如:D:\Tomcat\apache-tomcat-8.5.76\bin)
以上兩步為環境變量的配置,以前的版本都需要配置環境變量。不過 Tomcat7.0 后都不需要配置了(不論是解壓版,還是安裝版都不需要配置環境變量了),用 EditPlus 打開 bin 目錄下的 startup.bat,
可以看到如下原因 if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome,意思是 bin 目錄下存在 catalina.bat 文件就可以訪問 Tomcat 頁面了,代表着安裝成功了。
(3)運行Tomcat,使用win+R ,在彈出的窗口中輸入cmd,打開命令指示符運行窗口,輸入startup.bat 並敲擊回車,運行Tomcat文件。


在看到最后Tomcat出現startup in xxxx ms ,即為成功運行Tomcat。
(4)打開電腦的瀏覽器,在地址欄中輸入http://localhost:8080 (注意:此處的符號均為英文符號。Tomcat默認端口為8080),即可訪問到下圖的網頁。
PS:因為我更改過Tomcat的端口,所以我的端口為8888,默認端口為8080端口。
關閉 Tomcat 的方法,不能簡單的關閉 Tomcat 窗口,而是需要執行 shutdown.bat 命令。
(5)首次進入Tomcat網頁后,點擊Manager App 后顯示登錄頁面,但是由於我們沒有進行配置,所以無法進入,接下來我們進行賬戶配置。
我們復制網頁中的這串代碼:<user username="tomcat" password="s3cret" roles="manager-gui"/>
在Tomcat的安裝目錄里找到conf文件夾並打開,找到 tomcat-users.xml 文件,並用記事本打開。
PS:我這里使用的是 Sublime ,可以自動對代碼進行着色處理。

在 --><tomcat-users version="1.0" xmlns="http://tomcat.apache.org/xml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd">
這段代碼后面空白位置粘貼我們在網頁中復制的代碼。 例如<user password="123456" roles="manager-gui" username="tomcat"/>
其中,我們將password后引號內的部分輸入自己的密碼,即創建新密碼。username后引號內的部分為用戶名,可以進行更改。、
這里我們了解下Tomcat的四種用戶:
Tomcat 定義了 4 個不同的角色:
① manager-gui:允許訪問 HTML 圖形管理控制台與狀態頁面。
② manager-script:允許訪問文本接口和狀態頁面。
③ manager-jmx:允許訪問 JMX 代理和狀態頁面。
④ manager-status:只允許訪問狀態頁面。
由於我們對Tomcat的文件進行了更改,所以我們要重新啟動Tomcat,操作如上文所述。
再次打開 http://localhost:8080 (此處我的為8888)點擊“manager webapp”,在彈出窗口上輸入正確的用戶名和密碼。輸入我們設置好的用戶名和密碼登錄Tomcat。
三·Tomcat的使用
這部分會有幾個很重要的 xml 文件和目錄,大家要記好,區分好!!!
1、更改端口
Tomcat 默認的服務端口是 8080,我們可以通過 Tomcat 的配置文件對其進行修改。前面講過
Tomcat 安裝目錄中有一個 conf 文件夾是用於存放各種配置文件的,
其中 server.xml 文件就是 Tom
cat 主要的配置文件,端口號就是在這個文件中配置的。
(1)進入 Tomcat 安裝目錄,編輯文件“安裝目錄\conf\server.xml”(用記事本工具打開)
(2)在 server.xml 找到以下代碼:
<Connector connectionTimeout="20000" port="8080"
protocol="HTTP/1.1" redirectPort="8443"/>
(3)修改代碼中的 port="8080",可以將"8080"修改為"8081"。最大到 65535。
(4)修改后,為了是新配置的端口生效,還需要重啟 Tomcat 服務器。
2、部署Web應用
(1)復制到 Tomcat 目錄中
我們將之前編寫的靜態 Web 頁面部署到 Tomcat 中看看。之前的 hello.html 代碼如下:(此為HTML4.0的版本)
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>標題</title>
<meta charset="UTF-8">
</head>
<body>
這是我的第 1 個 HTML 頁面
</body>6
</html>
將 hello.html 拷貝至 Tomcat 安裝目錄下的\webapps\ROOT\目錄下,打開瀏覽器,輸入 http://服務器 IP 地址:8080/hello.html,就可以看到之前制作的 HTML。
(這里咱們將端口改成了8888,切記)
(2)在 server.xml 中配置虛擬目錄
我們不能把以后開發的所有頁面文件都拷貝到\webapps\ROOT\目錄下,這樣會很混亂。那我們怎么辦呢?
我們可以通過在 server.xml 中配置虛擬目錄來實現 Web 頁面的部署。
在<Host>元素中,添加一個<Context>元素,具體代碼如下:
<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true">
<Context path="/chapter02" docBase="D:\project_17javaweb\Chapter02\"/>
</Host>
重啟 Tomcat,打開瀏覽器,輸入 http://服務器 IP 地址:8080/chapter02/hello.html,可以看到 H
TML 網頁。
<Context>元素的屬性:
➢ path:指定訪問該 Web 應用的 URL 路徑,虛擬目錄。可以為空字符串,為空時表示該 W
eb 應用為 Tomcat 默認的項目,沒有子路徑。
➢ docBase:指定 Web 應用的文件路徑,可以給定絕對路徑,也可以給定相對於<Host>的 a
ppBase 屬性的相對路徑。如果 Web 應用采用開放目錄結構,則指定 Web 應用的根目錄,如果 W
eb 應用是個 war 文件,則指定 war 文件的路徑。
➢ reloadable:如果這個屬性設為 true,Tomcat 服務器在運行狀態下會監視在 WEB-INF/clas
ses 和 WEB-INF/lib 目錄下 class 文件的改動,如果監測到有 class 文件被更新的,服務器會自動重
新加載 Web 應用。(目前靜態 HTML 網頁用不到這個屬性)
(3)在自定義 xml 文件中配置虛擬目錄
在實際開發中,如果經常在 server.xml 文件中配置虛擬目錄會有一個弊端,就是每次修改 server.xml 文件后,想要使文件生效,必須重啟 Tomcat 服務器。
我們可以采用另外一種配置虛擬目錄的方式,在自定義的 xml 文件中配置虛擬目錄。
首先,進入 Tomcat 安裝目錄下的\conf\Catalina\localhost 目錄,在該目錄中,創建一個名為 chapter02.xml 的配置文件,文件名任意,文件類型必須是 xml 文件,
這個 xml 文件名將作為網址中的虛擬目錄名,一般來說要和<Context>中的 path 屬性值一致,
然后,將 server.xml 文件中配置好的<Context>元素,復制到該文件中。
<Context path="/chapter02" docBase="D:\project_17javaweb\Chapter02\"/>
重新啟動 Tomcat 服務器,這次重啟 Tomcat 服務器,是因為修改了 server.xml 文件(在<Host>
元素中刪除了之前添加的那個<Context>元素),讓之前的配置失效。打開瀏覽器,輸入 http://服務器 IP 地址:8080/chapter02/hello.html,可以看到 HTML 網頁。
說明,使用自定義的 xml 文件,也可以配置虛擬目錄。另外,在自定義的 xml 文件中,不僅可以配置虛擬目錄,還可以配置默認的 Web 應用。
配置方式很簡單,只需要將 chapter02.xml 文件重命名為 ROOT.xml 即可。
不需要啟動 Tomcat 服務器,在瀏覽器中輸入 http://服務器 IP 地址:8080/hello.html,也可以打開網頁。
你會發現,自定義 xml 文件中<Context>元素中的 path 屬性好像沒有什么作用,虛擬路徑取決於自定義的 xml 文件名,
但是建議大家為了閱讀代碼方便,還是在<Context>元素中保留 path屬性,並且讓它和 xml 文件同名。