tomcat是一個基于Java開發的,開放源代碼的web應用服務器。它可以解析html頁面中的java代碼,執行動態請求,實現動態頁面。核心功能是將收到的http請求處理并轉發給適當的servlet來處理,然后將響應返回給客戶端。
? ? ? ? 優點
? ? ? ? ? ? ? ? 1,免費
? ? ? ? ? ? ? ? 2,開源,可以二次封裝
? ? ? ? ? ? ? ? 3,可配置性強,可以根據需要進行自定義配置,包括端口號,虛擬主機等。
? ? ? ? ? ? ? ? 4,安全性:tomcat自帶安全機制,可以配置用戶認證,授權,加密傳輸。
? ? ? ? ? ? ? ? 5,部署應用非常快捷:tomcat會自動部署,自動運行。
????????三個核心組件:
? ? ? ? ? ? ? ? 1,Web容器,完成web服務器的功能,web應用。在web容器中,封裝了一組文件。在這一組文件之中,進行集中化管理。
? ? ? ? ? ? ? ? 2,ervlet容器:名字catalina,處理servlet代碼。處理web請求(http),以及生成動態內容的java類。
? ? ? ? ? ? ? ? 3,jsp:將動態頁面翻譯成servlet代碼,用標準格式展示jsp的靜態頁面。
????????Servlet組件
? ? ? ? ? ? ? ? 1,處理http請求。
? ? ? ? ? ? ? ? 2,生產動態內容,為了和數據庫交互。
? ? ? ? ? ? ? ? 3,會話管理,跟蹤用戶在不同請求之間的狀態,通過管理,可以在用戶訪問不同頁面時保持用戶的狀態信息。
? ? ? ? ? ? ? ? 4,與數據庫交互,servlet可以連接到數據庫執行查詢和更新操作,這就是servlet能夠生成動態內容的原因。Jap是動態頁面的開發技術,使用index.jsp標簽。在html頁面中插入java代碼。
功能組件:connector:負責對外接受和響應請求,是tomcat與外界的交通樞紐。監聽端口,也接受對外界的請求,交給container處理。
? ? ? ? 各個模塊作用:
????????????????Container:負責對內處理業務邏輯。
????????Engine:引擎,管理虛擬機(service),可以管理多個,但是每個service只能有一個engine;
????????Host:代表一個虛擬機,也可以叫站點。
????????Context:web應用,包含多個servlet
????????Wrapper:封裝器,最底層,每一個wrapper都封裝著一個servlet,負責對象實例的創建,執行以及銷毀。
????????
? ? ? ? 安裝后的文件以及作用:
? ? ? ? ? ? ? ? conf:主要配置文件:主配置文件server.xml。
? ? ? ? ? ? ? ? ????????contex.html:host的默認信息。
? ? ? ? ? ? ? ? ????????tomcat-user.xml:認證用戶密碼的配置文件
????????????????????????web.xml:配置servlet。
????????????????bin:存放啟動和關閉tomcat腳本文件。
? ? ? ? ? ? ? ? logs:日志文件。
? ? ? ? ? ? ? ? webapps:web應用部署的默認目錄。
? ? ? ? ? ? ? ? work:tomcat的工作目錄。存放jsp編碼之后的class文件。清除tomcat緩存就是刪work目錄。
??
tomcat安裝:
? ? ? ? jdk安裝:??
rpm -ivh jdk-8u201-linux-x64.rpm
查看jdk版本
java -version
設置jdk環境變量
vim /etc/profile.d/java.sh
export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
export PATH=$JAVA_HOME/bin:$PATHsource /etc/profile.d/java.sh
????????????????export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64:
????????????????這個命令設置了一個名為JAVA_HOME的環境變量,它指向Java JDK的安裝路徑。
????????????????這對于告訴系統和其他應用程序Java的安裝位置非常重要。你需要將路徑替換為你實際安裝Java的路徑。
????????????????export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:
????????????????這個命令設置了一個名為CLASSPATH的環境變量,它用于指定Java類的搜索路徑。
????????????????在這個命令中,.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar 表示當前目錄(.)
????????????????以及Java工具庫(tools.jar)和Java遠程調試庫(dt.jar)的路徑。這些庫通常包含一些Java開發所需的類。
????????????????export PATH=$JAVA_HOME/bin:$PATH:
????????????????這個命令將Java可執行文件的路徑添加到系統的PATH環境變量中。
????????????????這使得你可以在終端中直接運行Java工具,而不需要輸入完整的路徑。
????????????????這將Java的bin目錄添加到了PATH中,使得java、javac等命令可以直接運行。
? ? ? ? tomcat安裝:
tar -xf apache-tomcat-9.0.16.tar.gz
mv apache-tomcat-9.0.16 /usr/local/tomcat
? ? ? ? tomcat的開啟與關閉:需要進入conf中
開啟:./startup.sh
關閉:./shutdown.sh