目錄
1. Web相關概念
1.1 軟件架構
Web也就是網頁的意思,目前學習的Javaweb相關的知識也就是關於使用Java進行網站網頁開發的技術。上過計算機網絡或者考過研究生的同學們都知道,在網絡的應用層,也就是通常意義上使用各種各樣軟件的這個網絡層次,生存着着許多軟件,而其架構大體分爲兩類:
- C/S:客戶服務端模型,例如QQ,百度雲,各類遊戲等,需要在個人的主機上下載一個客戶端。
- B/S:瀏覽器服務器模型,例如網上的各種管理系統,選課網等,直接通過瀏覽器與服務器交互。
1.2 web資源
web也就是通過瀏覽器訪問的服務器上的資源,分爲兩類:
- 靜態資源:所有用戶訪問後得到的結果都是一樣的,不會因Java代碼而動態變化,靜態資源可以直接被瀏覽器解析。如Html,Css,JavaScript等。
- 動態資源:每個用戶訪問相同的資源,得到的結果可能會不一樣,會因Java代碼而動態變化。動態資源被訪問後,需要先轉換成靜態資源,然後再返回給瀏覽器展示。如servlet,JSP等。
1.3 web服務器軟件
- 服務器:安裝了服務器軟件的計算機
- 服務器軟件:接收用戶請求,處理請求,並且做出響應的軟件。
- web服務器軟件:接收請求做出響應,可以部署web項目,讓用戶通過瀏覽器來訪問這些項目的web容器。
常見的web服務器軟件:
- webLogic:oracle公司,大型的JavaEE服務器,支持所有的JavaEE規範,收費的。
- webSphere:IBM公司,大型的JavaEE服務器,支持所有的JavaEE規範,收費的。
- JBOSS:JBOSS公司的,大型的JavaEE服務器,支持所有的JavaEE規範,收費的。
- Tomcat:Apache基金組織,中小型的JavaEE服務器,僅僅支持少量的JavaEE規範servlet/jsp。開源的,免費的。
JavaEE規範有哪些呢,是包括Servlet,JSP,Filter,Listener在內的13項規範。
2. Tomcat介紹
2.1 Tomcat簡介
官方網址爲http://tomcat.apache.org。得到了廣大開源代碼志願者的大力支持,且可以和目前大部分的主流Web服務器(IIS、Apache服務器)一起工作,它運行穩定、可靠且高效。已成爲目前開發企業JavaWeb應用的最佳Servlet容器選擇之一。
2.2 Tomcat下載及安裝
打開網址,點擊download下的Tomcat9版本下載即可。
選擇64位windows版本下載即可,下載到本地解壓即可使用。安裝目錄建議不要有中文和空格。
- tar.gz文件是Linux操作系統下的安裝版本
- exe文件是Windows系統下的安裝版本x86 x64
- zip文件是Windows系統下的壓縮版本 (建議)
2.3 Tomcat版本介紹
Tomcat軟件也是用Java寫的,所以在使用Tomcat之前要確保你已經下載了jdk。
Tomcat的版本隨着SUN公司推出的Servlet/JSP規範不同而不同,基本上是SUN公司每推出一個版本,Tomcat也會發行新的版本以適應新的規範。
Tomcat版本 | Servlet/JSP規範 | JDK版本 |
9.0 | 3.0 | 1.9 |
8.0 | 3.0 | 1.8 |
7.0 | 3.0 | 1.7 |
6.0 | 2.5 | 1.6 |
2.4 Tomcat目錄介紹
2.5 Tomcat如何使用
bin目錄/start.bat:Windows系統啓動
bin目錄/start.sh:LInux系統系統
bin目錄/shutdown.bat:Windows系統正確關閉Tomcat
bin目錄/shutdown.sh:Linux系統關閉Tomcat
強制關閉Tomcat:直接右上角點X
2.6 Tomcat使用過程中常見問題
- 黑窗口一閃而過
- 原因:沒有正確配置好Java_home環境變量,因爲Tomcat的start.bat批處理文件裏面已經寫了要找Java_home這個環境變量,因爲Tomcat是Java寫的嘛
- 解決:滾去配置,過程自己百度。
2. 啓動報錯
- 原因:其他程序佔用了Tomcat的端口號(默認8080,一般改爲80,因爲http協議用的就是80端口,在訪問時,就不用輸入端口號)
- 解決:暴力:找到佔用的端口號,並且找到對應的進程,殺死該進程
netstat -ano
溫柔:修改自身端口號
conf/server.xml
<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8445" />
2.7 Tomcat修改相關配置
修改端口號及IDEA上的相關配置
2.8 Tomcat如何部署項目
- 直接將項目放到webapps目錄下即可。
/hello:項目的訪問路徑-->虛擬目錄
簡化部署:將項目打成一個war包,再將war包放置到webapps目錄下。(1. 因爲Tomcat在啓動過程中會自動解壓縮 war包,不需要重啓Tomcat)(2. 此外壓縮文件它的傳輸更快)
- 配置conf/server.xml文件。
在<Host>標籤體中配置
<Context docBase="D:\hello" path="/hehe" />
* docBase:項目存放的路徑
* path:虛擬目錄
(需要注意)這是整個tomcat核心的配置文件,在這裏部署項目的話會影響配置文件,在這裏配置很不安全。
- 在conf\Catalina\localhost創建任意名稱的xml文件。在文件中編寫。
<Context docBase="D:\hello" />
* 虛擬目錄:xml文件的名稱
2.9 如何開發普通Javaweb項目(以IDEA爲例)
- 先建個空項目
- 創建JavaEE模塊,勾選Web Application支持
- 選擇jdk和JavaEE版本
3. IDEA集成Tomcat
3.1 IDEA是如何集成Tomcat的
- IDEA會爲每一個tomcat部署的項目單獨建立一份配置文件
查看控制檯的log:Using CATALINA_BASE: "C:\Users\fqy\.IntelliJIdea2018.1\system\tomcat\_itcast"
- 工作空間項目 和 tomcat部署的web項目
tomcat真正訪問的是“tomcat部署的web項目”,"tomcat部署的web項目"對應着"工作空間項目" 的web目錄下的所有資源
WEB-INF目錄下的資源不能被瀏覽器直接訪問。是被保護起來的。
3.2 通過IDEA啓動Tomcat的異同點
https://blog.csdn.net/qq_22627687/article/details/76555886