第二十四章:Tomcat伺服器
作者:java_wxid
JavaWeb的概念
什麼是JavaWeb?
JavaWeb指的是使用java語言編寫所有的能夠讓瀏覽器訪問的程式的總稱。我們叫javaWeb。
a)什麼是請求
請求是指客戶端給伺服器傳送資料。
b)什麼是響應
響應是指伺服器回傳給客戶端的資料。
c)請求和響應的關係
有請求就有響應。
Web資源的分類
Web資源按照實現的技術以及呈現的效果分類為靜態資源和動態資源兩種。
靜態資源: html頁面、css檔案、js檔案、圖片、視訊、文字等
動態資源: jsp動態頁面,Servlet程式
常用的Web伺服器
web伺服器簡介
Tomcat:由Apache組織提供的一種Web伺服器,提供對jsp和Servlet的支援。它是一種輕量級的javaWeb容器(伺服器),
也是當前應用最廣的JavaWeb伺服器(免費)。
JavaWeb容器 ===>>> 就理解為伺服器(Tomcat)
Jboss:是一個遵從JavaEE規範的、開放原始碼的、純Java的EJB伺服器,它支援所有的JavaEE規範(免費)。
GlassFish: 由Oracle公司開發的一款JavaWeb伺服器,是一款強健的商業伺服器,達到產品級質量(應用很少)。
Resin:是CAUCHO公司的產品,是一個非常流行的伺服器,對servlet和JSP提供了良好的支援,
效能也比較優良,resin自身採用JAVA語言開發(收費,應用比較多)。
WebLogic:是Oracle公司的產品,是目前應用最廣泛的Web伺服器,支援JavaEE規範,
而且不斷的完善以適應新的開發要求,適合大型專案(收費,用的不多,適合大公司)。
Tomcat伺服器和Servlet版本的對應關係
當前企業常用的版本 7.*/8.*
都是按照2.5的版本的規範來講Servlet程式
2.5是在web.xml中進行配置
3.0都是使用註解
Tomcat的使用
a)安裝
找到你需要安裝的版本的zip壓縮包,解壓到你需要安裝的目錄即可。
apache-tomcat-7.0.85-windows-x64.zip
解壓
apache-tomcat-7.0.85目錄
b)目錄介紹
bin 放tomcat程式的一些可執行程式。
conf 放Tomcat伺服器的配置檔案
lib 放tomcat執行時的jar包
logs 放tomcat執行時輸出日記的目錄
temp
webapps 專門用來部署web工程
work 用來存放jsp翻譯之後的Servlet程式以及,Session活化和鈍化的序列化檔案
c)如何啟動Tomcat伺服器
1).找到tomcat伺服器安裝目錄下的bin目錄下的startup.bat檔案,雙擊執行即可啟動tomcat伺服器。
如何測試Tomcat伺服器啟動成功?
開啟瀏覽器,在瀏覽器位址列中輸入訪問測試地址:
1、http://localhost:8080(本機)
2、http://127.0.0.1:8080(本機)
3、http://192.168.10.100(自己電腦的ip地址):8080
當瀏覽器出現如下介面,說明Tomcat伺服器啟動成功!!!
2)另一種方式啟動Tomcat:catalina run 啟動
a)先開啟window命令列視窗
b)cd 到你的Tomcat目錄下的bin目錄
c)在命令列輸入 catalina run 命令 , 按回車
配置tomcat的埠(****重點)
tomcat預設的埠是8080(訪問埠)
http的預設埠是80
如果訪問的時候輸入http://www.baidu.com相當於http://www.baidu.com:80
真正在專案上線之後,通常採用80.
1)找到tomcat目錄/conf/server.xml
2)修改port的值,將port埠的值修改為80
修改Tomcat的監聽的埠之後,一定要重啟Tomcat伺服器才能生效
3)然後在瀏覽器中輸入 http://127.0.0.1:80 或 http://127.0.0.1 訪問測試
訪問成功!!!
一般我們使用tomcat預設的埠8080訪問,所以還是要修改回去。
啟動Tomcat伺服器失敗的幾種常見情況:
1、沒有配置JAVA_HOME環境變數(或者是配置錯誤)
JAVA_HOME常見的配置錯誤有以下幾種情況:
java_home(字母都要大寫) 錯誤 =====>>>>> 正確是:JAVA_HOME
JAVA-HOME(要下劃線,不要減號) 錯誤 =====>>>>> 正確是:JAVA_HOME
JAVA_HOME,但是值配置到了C:\Java\jdk1.8.0_102\bin 錯誤。
應該配置到C:\Java\jdk1.8.0_102
Tomcat伺服器執行時需要的埠號,被其他程式所佔用。
Tomcat的停止
1、找到tomcat伺服器目錄下的bin目錄,下的shutdown.bat雙擊,就可以停止 Tomcat伺服器。(重點)
2、找到tomcat伺服器的視窗,點選x按鈕
3、找到tomcat伺服器的視窗,使之成為當前視窗。按快捷鍵Ctrl+C
常用的部署工程到Tomcat中的方式(****重點)
案例一:
一般一個web工程,是一個目錄,然後目錄中每個檔案都是這個web工程下的資源。
在工程目錄下的每一個目錄,都分別和瀏覽器位址列中的地址有一個對應關係。
案例二:
將網站目錄複製到tomcat/webapps目錄 ---- 常用,必須掌握
有一個網站(一個資料夾),把資料夾複製到tomcat的webapps目錄下。
資料夾的名字,就是網站或者工程的訪問目錄
然後在位址列上輸入:http://127.0.0.1:8080/atguigu/xxxxx.html
http:// 是協議
127.0.0.1 是你要訪問的伺服器的IP地址
8080 是tomcat監聽的埠號
atguigu 是webapps 目錄下你要訪問的專案名
xxxx.html 是這個目錄下要訪問的檔名
手託html頁面到瀏覽器和在瀏覽器中輸入http://ip:埠號/工程名/訪問的區別?
webapps目錄下ROOT工程的訪問
當我們在瀏覽器位址列輸入 http://ip:port/ 表示訪問ROOT工程
當我們在瀏覽器位址列輸入 http://ip:port/工程名/ 表示訪問指定工程名下的index.html頁面
如果webapps下面有一個ROOT的專案。那麼在訪問的時候,直接可以省略專案的名字/ 表示訪問ROOT目錄
在ROOT目錄下新建一個hello.html檔案,內容如下:
輸入 http://127.0.0.1:80/hello.html 或 http://127.0.0.1/hello.html 訪問測試
注意:埠號是否一致,如果是預設埠號則是http://127.0.0.1:8080/hello.html
訪問成功!!!
整合Tomcat和Eclipse開發工具中(***常用必須掌握)
開啟Eclipse的Server檢視視窗
第一種情況,直接開啟Servers視窗
第二種情況,搜尋Servers視窗開啟
圖一,開啟總的eclipse檢視
圖二:輸入Server過濾出伺服器視窗選項
Servers伺服器視窗已成功開啟,如下圖:
建立Tomcat 伺服器
1)在Servers視窗中,點選 建立 server 的文字提示連線。如下圖:
2)建立一個新的Tomcat伺服器例項
注意:如果你的tomcat是7.0選擇自己的7.0
3)點選Browse按鈕,開啟目錄選擇視窗。選擇Tomcat 解壓目錄
4)選擇Tomcat目錄,然後點選確定按鈕
5)Tomcat目錄選擇好之後,點選 【Next】按鈕繼續操作
6)點選 【Finish】按鈕結束操作
7)Tomcat 伺服器建立成功!!!
當Tomcat和Eclipse整合成功之後。在Eclipse中會有一個Servers工程目錄,這個工程目錄是整合Tomcat之後的配置檔案工程。
提示:一定要記住。這個Servers工程,永遠不要刪除。也不要關閉。否則Tomcat無法啟動。
如下圖:
啟動Eclipse中的Tomcat伺服器
1)Debug模式啟動Tomcat伺服器
提示當前為Debug模式啟動!!!
Tomcat啟動成功的控制檯提示!!!
2)Run模式啟動Tomcat伺服器
Run模式啟動顯示
Tomcat啟動成功的控制檯提示!!!
停止 Eclipse 中的Tomcat 伺服器
暴力停止 Tomcat (相當於電腦被拔掉電源一樣。沒有執行關機的準備操作。)
正常停止 Tomcat (相當於點選作業系統中的關機按鈕,執行關機儲存操作,然後關機)
建立動態web工程
1)先建立 動態的Web工程
2)配置工程的選項
3)勾選生成web.xml配置檔案
4)動態web工程建立完成!!!
web工程目錄的介紹和說明
當我們建立好動態的Web工程之後,我們通過瀏覽器訪問如下路徑比如說:
http://127.0.0.1:8080/day06
http: 表示訪問的協議是http
127.0.0.1 表示要訪問的是哪一臺伺服器
8080 埠 表示訪問伺服器中的哪一個程式 Tomcat伺服器( 一個伺服器上可以同時安裝多個Tomcat伺服器 )
day06 是告訴伺服器訪問的是哪一個工程( Tomcat 可以同時布暑多個工程。預設訪問的是index.html 或 index.htm 或 index.jsp )
http://127.0.0.1:8080/day06/1.html 表示訪問的是ip地址為127.0.0.1的本地伺服器,8080埠的伺服器Tomcat程式。訪問day06這個工程中的1.html檔案
手動部署工程到Tomcat中(瞭解內容,知道即可)
1、拷貝web工程中WebContent目錄到tomcat的webapps目錄下。
2、修改在webapps目錄下的webContent目錄為你需要的工程名
3、手動拷貝eclipse下的build目錄下的classes目錄到部署工程的WEB-INF目錄下
eclipse工作區間專案下:
tomcat目錄下的專案工程的WEB-INF目錄下
手動部署工程到Tomcat整個過程非常繁鎖麻煩。而且極其不方便專案程式碼的除錯。
既然手動部署web工程,這麼麻煩。所以才需要整合Tomcat到Eclipse中。
右鍵 Run on Server 選單 做哪些操作?
1、把web工程已經部署到了伺服器上。
2、開啟瀏覽器
3、在瀏覽器中,直接替你訪問好你要訪問的資源
釋出工程到Tomcat中執行
1)先選中你要釋出的工程。右鍵執行
2)選擇伺服器
3)點選Finish按鈕布暑並執行伺服器
4)布暑工程並執行的結果
整合Tomcat到Eclipse中之後,最最主要的作用就是訪問部署工程,除錯程式
配置Eclipse 中的Tomcat 布暑的Web工程路徑
1)開啟Servers視窗,雙擊Tomcat v6.0 Server 伺服器開啟 Tomcat的配置視窗
這裡是Eclipse把工程釋出後的三種不同的選項。
問題1:整合Eclipse和Tomcat的作用是什麼?
整合Tomcat和eclipse,最主要的作用,就是為了方便 部署工程和除錯程式。
並且 整合就只是為了方便 測試程式。
問題2:整合後原來的Tomcat工程為什麼就無法訪問了?
整合之後的Tomcat和你原來安裝的Tomcat不是同一個伺服器。
A:QQ (原來安裝的Tomcat)
a1
a2
B:QQ (整合之後的Tomcat)
b1
b2
B:qq不能訪問a1,a2
整合Tomcat到Eclipse之後,只是為了除錯程式。
Tomcat 位置-選項介紹說明:
- User workspance metadata (does not modify Tomcat installation) 將在eclipse的工作區間目錄下
eclipse的工作空間目錄.metadata.plugins\org.eclipse.wst.server.core\tmp0\ 有一份tomcat的拷貝
所有布暑的web工程都會布暑到eclipse的工作空間目錄.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps目錄中
- User Tomcat installation (takes control of Tomcat installation) 在原Tomcat目錄下做更改操作
所有布暑的web工程都會發布到Tomcat目錄下的\wtpwebapps目錄中
- User custom location ( does not modify Tomcat installtion ) 自定義一個目錄去布暑Web工程
比如操作如下:
一:選擇自定義的布暑目錄
二:選擇你自定義的目錄,然後點選確定。之後Tomcat的一些目錄會被拷貝過來。布暑的工程也在這個目錄下的wtpwebapps目錄下
三:選中你要布暑的工程,右鍵選擇選單 Run As —>>> Run on Server
將工程布暑到剛剛自定義的目錄下。
四:選擇你當前的web工程需要使用的哪個伺服器執行。
如果勾選中 Always use this server when running this project 表示下次執行伺服器的時候預設使用當勾時時候選擇的伺服器執行。
五:等待Tomcat啟動,web工程布暑成功後。檢視
六:在瀏覽器中輸入測試檢視
如何設定右鍵run工程,開啟外接的瀏覽器訪問。
Servers工程的作用
當我們建立Tomcat伺服器的時候。在Eclipse中就會建立一個Servers工程,這個工程下存放了所有伺服器的配置檔案。
以後我們要修改Eclipse中整合的Tomcat伺服器的配置選項,就到這裡面進行修改。
Eclipse中啟動Tomcat常見錯誤
當出現這個錯誤,只需要找到原來安裝的Tomcat下的bin目錄下的shutdown.bat雙擊,即可解決