# 下載 這就不多說了,直接官網下載 https://tomcat.apache.org/ 直接解壓 配置 環境變數 (提前安裝好java,配置好java的環境變數) 配置Tomcat環境變數前一定要配置好java的環境變數,尤其是JAVA_HOME 新建 `CATALINA_HOME` 環境變數, ...
下載
這就不多說了,直接官網下載 https://tomcat.apache.org/
直接解壓
配置 環境變數 (提前安裝好java,配置好java的環境變數)
配置Tomcat環境變數前一定要配置好java的環境變數,尤其是JAVA_HOME
新建 CATALINA_HOME
環境變數,
變數:CATALINA_HOME
值:D:\DevelopmentTool\apache-tomcat-9.0.43
修改 Path
,
在 Path
後添加(新建 可以不加): %CATALINA_HOME%\lib、%CATALINA_HOME%\bin、%CATALINA_HOME%\lib\servlet-api.jar
tomcat 目錄介紹
- bin:可執行文件(啟動文件startup.bat、關閉文件shutdown.bat)
- conf:配置文件(修改埠號:server.xml,建議將server.xml備份)
- lib:依賴的jar包
- log:日誌文件(記錄出錯等信息)
- temp:臨時文件
- webapps:可執行的項目。預設作為存放開發項目的目錄
- work:存放由jsp翻譯成的.java源文件,以及編譯的.class位元組碼文件(jsp ->java ->class)
啟動亂碼問題
問題描述:打開startup.bat
後漢字亂碼
解決方法:在.\apache-tomcat-9.0.43\conf
下打開logging.properties
文件
51行左右
將java.util.logging.ConsoleHandler.encoding = UTF-8
替換為java.util.logging.ConsoleHandler.encoding = GBK
埠衝突問題
- 與其他服務的埠號衝突
tomcat埠號預設8080,如果和其他服務的埠號衝突,則可對埠號進行修改
在.\apache-tomcat-9.0.43\conf
下打開server.xml
文件,在文件的69
行左右,將port="8080"
修改為指定的某一埠號,重新啟動。
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
簡單理解工作原理
1. 客戶端發送servlet請求
2. servlet 容器接收到客戶端請求,進行解析
3. servlet 容器創建一個ServletRequest對象, 對象內包含了 客戶請求信息及其客戶相關信息,請求頭、請求正文、客戶端的ip
4. servlet 容器創建一個servletResponse 對象
5. serverlet 容器調用客戶請求的servlet的service()服務方法,並把servletRequest對象和 servletResponse對象作為參數傳給該服務方法
6. servelet 從servletRequest對象裡面獲取客戶端請求信息
7. servlet利用servletResponse對象生成響應結果
8. servlet容器把servlet生成的響應結果發送給客戶
tomcat 設置
CATALINA_HOME/conf/server.xml