Tomcat的安裝與使用及Maven與Servlet的使用教程
一.Tomcat的下載與使用
1. Tomcat簡(jiǎn)介
Tomcat是Apache軟件基金會(huì)(Apache Software Foundation)的Jakarta項(xiàng)目中的一個(gè)核心項(xiàng)目, 由Apache, Sun和其他一些公司及個(gè)人共同開發(fā)而成, 由于有了Sun的參與和支持, 最新的Servlet和JSP規(guī)范總是能在Tomcat中得到體現(xiàn), Tomcat5支持最新的Servlet 2.4和JSP 2.0規(guī)范.
因?yàn)門omcat技術(shù)先進(jìn), 性能穩(wěn)定, 而且免費(fèi), 因而深受Java愛好者的喜愛并得到了部分軟件開發(fā)商的認(rèn)可, 成為比較流行的Web應(yīng)用服務(wù)器.
Tomcat是一個(gè)HTTP服務(wù)器, HTTP服務(wù)器有很多種, 在Java領(lǐng)域中, Tomcat是最知名, 最廣泛使用的一個(gè), 本質(zhì)上是基于TCP服務(wù)器, 按照HTTP協(xié)議的約定來解析請(qǐng)求, 構(gòu)造響應(yīng).
2. 安裝和使用
下載與安裝:1??第一步, 瀏覽器中搜索Tomcat, 找到Tomcat官網(wǎng) https://tomcat.apache.org/
2??第二步, 根據(jù)你的環(huán)境, 選擇相應(yīng)版本下載即可, 需要知道的是Tomcat的版本和你使用的Servlet版本是有強(qiáng)相關(guān)的, 這里就下載Tomcat8了, 對(duì)應(yīng)的Servlet的版本就是3.1的.

3??第三步, 點(diǎn)進(jìn)去, 選擇zip文件點(diǎn)擊下載即可, 如果你有下載多個(gè)版本的需求, 也是可以的, Tomcat是純綠色的軟件, 直接解壓就能使用, 下載多個(gè)版本之間是互不影響的.

4??第四步, 找個(gè)你常用的目錄, 解壓即可, 點(diǎn)進(jìn)目錄, 你會(huì)得到下面一堆文件:

還要注意, Tomcat是基于Java實(shí)現(xiàn)的, 這就要求你的環(huán)境中必須要有jdk, 如果沒有Tomcat是跑不起來的.使用:5??第五步, 了解各目錄文件的作用

??bin目錄中放的是Tomcat相關(guān)的批處理文件, .bat文件表示Windows批處理文件, .sh文件表示Linux的shell腳本文件, 其中包含啟動(dòng)和關(guān)閉Tomcat的可執(zhí)行文件, 也就是說Tomcat也是可以在Linux上運(yùn)行的, 以startup命名的文件就是Tomcat啟動(dòng)程序, 以shutdown命名的文件就是Tomcat關(guān)閉程序.

??conf目錄中含有Tomcat的配置文件, 配置文件是xml類型的文件, 比如可以在server.xml文件可以配置Tomcat的端口號(hào), 不修改的話默認(rèn)就是8080了.

??logs目錄主要用來儲(chǔ)存日志, Tomcat運(yùn)行的日志都在這里, 如果程序出問題了, 就需要看這里的日志來排產(chǎn)問題.??webapps目錄儲(chǔ)存我們部署的Serlvet程序, Servlet部署的程序是war結(jié)尾的壓縮包, Tomcat將一個(gè)war包解壓后就是一個(gè)webapp, 即一個(gè)網(wǎng)站, 一個(gè)Tomcat可以部署多個(gè)Servlet程序, 即多個(gè)網(wǎng)站, 所以就是webapps, 里面的每個(gè)目錄都代表一個(gè)獨(dú)立的網(wǎng)站.
temp, lib, work目錄用的不多, 就不作贅述了.

6??第六步, 啟動(dòng)Tomcat, 我們可以在bin目錄下找到startup.bat文件點(diǎn)擊在本地啟動(dòng)Tomcat, 然后直接訪問http://127.0.0.1:8080可訪問到Tomcat歡迎頁面(Tomcat自帶的一個(gè)webapp).

啟動(dòng)Tomcat的頁面圖如下, 出現(xiàn)類似org.apache.catalina.startup.Catalina.start Server startup in 936 ms的信息就表示啟動(dòng)成功了

可以看到這里控制臺(tái)有些是亂碼的, 這是因?yàn)槲覀兊腡omcat是在下Windows下啟動(dòng)的, Windows的默認(rèn)編碼是GBK, 我們可以可以修改以下配置conf/logging.properties, 然后關(guān)閉Tomcat后重新啟動(dòng).
當(dāng)然, 如果要將Tomcat配置到Linux環(huán)境下, 這里的配置還是需要改回UTF8的.


要注意, 當(dāng)啟動(dòng)一個(gè)Tomcat程序后再啟動(dòng)一個(gè)Tomcat程序會(huì)啟動(dòng)失敗, 因?yàn)槎丝谔?hào)8080已經(jīng)被上一個(gè)Tomcat程序占用了.

7??第七步, 將項(xiàng)目部署到Tomcat, 所謂部署就是將我們的代碼拷貝到webapps目錄下即可, 然后在bin目錄找到startup.bat文件重新啟動(dòng)Tomcat, 最后訪問http://127.0.0.1:8080/部署文件的相對(duì)wepapps目錄的相對(duì)路徑進(jìn)行驗(yàn)證.
比如我的webapps目錄中有一個(gè)BlogSystem文件夾, 里面有一個(gè)login.html頁面文件, 我們現(xiàn)在要使用Tomcat訪問這個(gè)文件, 訪問的url就為http://127.0.0.1:8080/BlogSystem/login.html.
這里訪問的路徑組成為, ip:端口號(hào), 后面的BlogSystem是我們的webapps下的目錄, 我們也稱為context path/application path, 再后面的路徑是我們的context path下要訪問的文件, 這種形式的訪問是通過網(wǎng)絡(luò)可以跨主機(jī)訪問的, 初學(xué)要注意與本地點(diǎn)文件打開訪問進(jìn)行區(qū)分.

訪問http://127.0.0.1:8080/BlogSystem/login.html結(jié)果如下,

不過我們這里在Tomcat部署的網(wǎng)頁, 是在局域網(wǎng)環(huán)境下, 只有在同一局域網(wǎng)下的設(shè)備才可以訪問, 如果是部署在外網(wǎng)IP下, 那么全世界的設(shè)備就都可以訪問了.
最后就是關(guān)閉Tomcat了, 一共有三種關(guān)閉方式:
- Ctrl + C關(guān)閉
- 直接點(diǎn)窗口右上角X號(hào)關(guān)閉
- 使用bin目錄下的shutdown.bat關(guān)閉
這三種方式中, 第1, 2種是比較粗暴的關(guān)閉方式, 這種方式會(huì)直接殺死進(jìn)程; 第3種方式比較優(yōu)雅, Tomcat還會(huì)綁定一個(gè)8005管理端口, 是通過管理端口來關(guān)閉的, 會(huì)多做一些收尾工作; 但實(shí)際上, 第1, 2種關(guān)閉方式是更方便, 更常用的.
二.Maven的使用
Maven是專門用于管理和構(gòu)建Java項(xiàng)目的 “工程管理” 工具, 有規(guī)范目錄結(jié)構(gòu), 管理依賴, 構(gòu)建/編譯, 打包, 測(cè)試等功能, Maven是一個(gè)獨(dú)立的程序, 但不需要我們單獨(dú)下載安裝, IDEA中已經(jīng)直接集成了.
那么首先來介紹如何使用IDEA來使用Maven來引入的依賴, 以引入Servlet的為例.
1??第一步, 新建項(xiàng)目, 選擇Maven.
選中這里的Maven點(diǎn)擊Create就可以創(chuàng)建Maven管理的項(xiàng)目了,

項(xiàng)目創(chuàng)建好后會(huì)就會(huì)自動(dòng)創(chuàng)建如下目錄結(jié)構(gòu),

main目錄中放業(yè)務(wù)代碼, java目錄中放java代碼, resources目錄中放程序的依賴文件, test目錄下放測(cè)試代碼, pom.xml文件是Maven項(xiàng)目總的配置文件.
如果是首次使用Maven, 項(xiàng)目創(chuàng)建好了之后, 會(huì)在下面讀條, 從中央倉庫加載一些Maven的依賴, 由于Maven倉庫的服務(wù)器是在國外的, 下載的速度就可能比較慢; 如果實(shí)在太慢嘗試就更換下網(wǎng)絡(luò), 或者配置一下國內(nèi)鏡像的阿里云服務(wù)器再下載.
2??第二步, 引入依賴.
首先要知道坐標(biāo)的概念, Maven中的坐標(biāo)是資源的唯一標(biāo)識(shí), 要使用坐標(biāo)來引入項(xiàng)目中所需要的依賴, Maven標(biāo)準(zhǔn)由以下幾個(gè)部分組成:
groupId: 定義當(dāng)前Maven項(xiàng)目隸屬組織名稱(通常是域名的反寫)artifactId: 定義當(dāng)前Maven項(xiàng)目名稱(通常是模塊名稱, maven_project)version: 定義當(dāng)前項(xiàng)目版本號(hào)scope: 設(shè)置對(duì)應(yīng)jar包的作用范圍
這里以引入Servlet的依賴為例進(jìn)行介紹, 我們要去Maven中央倉庫(https://mvnrepository.com/), 搜索Servlet, 找到Servlet的jar包點(diǎn)進(jìn)去


點(diǎn)擊選擇3.1版本, 和tomcat8對(duì)應(yīng), 復(fù)制圖中位置的坐標(biāo)內(nèi)容.

把坐標(biāo)拷貝到項(xiàng)目的pom.xml文件中, 我們需要, 先創(chuàng)建一個(gè)dependencies標(biāo)簽, 是project標(biāo)簽的子標(biāo)簽, 可以放多個(gè)依賴, 把依賴依次拷貝到這個(gè)標(biāo)簽即可.

首次使用, 這里可能會(huì)爆紅, 說明依賴還沒有下載下來.當(dāng)這段代碼復(fù)制到pom.xml文件中, Maven就會(huì)自動(dòng)下載相應(yīng)的依賴文件, 沒有觸發(fā)自動(dòng)下載的話, 可以手動(dòng)刷新一下觸發(fā)下載, 當(dāng)依賴下載完成后, 也就不爆紅了.

這樣就引入依賴成功了.

三.Servlet
Servlet是一種實(shí)現(xiàn)動(dòng)態(tài)頁面的技術(shù), 要注意區(qū)分靜態(tài)頁面和動(dòng)態(tài)頁面:
- 靜態(tài)頁面: 網(wǎng)頁內(nèi)容始終固定不變的(單純的html)
- 動(dòng)態(tài)頁面: 用戶不同/時(shí)間不同/輸入?yún)?shù)不同時(shí)頁面的內(nèi)容會(huì)發(fā)生變化(html+后端交互數(shù)據(jù))
Servlet是Tomcat提供的一組API, 封裝了HTTP相關(guān)操作, 可以讓我們不必關(guān)注Socket, HTTP協(xié)議格式等細(xì)節(jié), 降低了Web開發(fā)的門檻, 提高開發(fā)效率.
Servlet主要進(jìn)行的工作:
- 允許我們創(chuàng)建一個(gè)類, Tomcat收到某個(gè)特定路徑的HTTP請(qǐng)求時(shí), 執(zhí)行該類中的某個(gè)方法
- 對(duì)HTTP請(qǐng)求進(jìn)行解析, 并將HTTP請(qǐng)求從一個(gè)字符串解析成一個(gè)HttpRequest對(duì)象
- 我們只需要給指定的HttpResponse對(duì)象的一些屬性字段填寫, Servlet就會(huì)自動(dòng)的按照HTTP協(xié)議的方式構(gòu)造出一個(gè)HTTP響應(yīng)的字符串, 然后通過Socket寫回客戶端.
1. 第一個(gè)Servlet程序
那么下面就來寫一個(gè)Servlet程序, 我們使用Servlet來在寫一個(gè)hello world程序, 然后部署到Tomcat上, 此時(shí)通過瀏覽器去訪問, 就會(huì)在網(wǎng)頁上得到一個(gè)有hello world字符串的頁面.
1??第一步, 創(chuàng)建Maven項(xiàng)目, 創(chuàng)建步驟在上面介紹過了.
2??第二步, 引入Servlet依賴, 還是去參考上面寫的.
3??第三步, 創(chuàng)建目錄結(jié)構(gòu), 雖然Maven已經(jīng)幫我們自動(dòng)創(chuàng)建了一些目錄, 但是還不夠, 因?yàn)榇颂幬覀兪褂肕aven開發(fā)的是一個(gè)Web程序, 還需要一些額外的目錄.
在main目錄里創(chuàng)建webapp目錄, 該目錄和java,resources并列

在webapp目錄里面創(chuàng)建WEB-INF目錄.

在WEB-INF目錄下創(chuàng)建web.xml文件.

給web.xml寫入指定配置, 需要注意的是, 這里的代碼可能是爆紅的, 但在這里并不代表就是錯(cuò)的, IDEA中只是針對(duì)Java代碼能夠進(jìn)行比較準(zhǔn)確的分析和判定, 針對(duì)其他代碼, 如果標(biāo)紅, 是否是錯(cuò)的, 都不一定.
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
<display-name>Archetype Created Web Application</display-name>
</web-app>這里相關(guān)的還要理解的是, Servlet程序中是沒有main方法的, 那么它是怎么跑起來的呢?這就和我們創(chuàng)建的這個(gè)web.xml有關(guān)了, 依靠這個(gè)文件, Tomcat就可以識(shí)別webapps目錄下哪些項(xiàng)目目錄是需要加載到服務(wù)器中的.
所以說, 這樣的目錄結(jié)構(gòu)是必須的, 使用Tomcat就得遵照人家的要求, 當(dāng)然也不是不可以改其他名稱, 是需要額外配置的.
4??第四步, 在Java目錄下編寫Servlet代碼.
- 創(chuàng)建類HelloServlet, 繼承HttpServlet類(由Servlet API提供, 寫Servlet代碼一般都要繼承這個(gè)類).
- 重寫doGet方法, 用來處理HTTP GET請(qǐng)求, 根據(jù)請(qǐng)求生成響應(yīng), 有HttpServletRequest req(TCP socket中讀出來的字符串,按照HTTP協(xié)議解析得到的對(duì)象), HttpServletResponse resp(空對(duì)象, 輸出型參數(shù), 要由我們?nèi)?gòu)造)兩個(gè)參數(shù), Tomcat服務(wù)器接收到GET或者POST請(qǐng)求時(shí)就會(huì)調(diào)用這里相應(yīng)的方法(不需要我們手動(dòng)調(diào)用).
- 在方法里面寫業(yè)務(wù)邏輯代碼, 構(gòu)造出resp.
- 加上WebServlet注解標(biāo)識(shí)路徑, 這個(gè)注解的作用是把當(dāng)前的類和一個(gè)HTTP請(qǐng)求的路徑關(guān)聯(lián)起來, 不同的路徑關(guān)聯(lián)的是不同類, 可以觸發(fā)不同的代碼 (注解是Java 中的特殊的類, Java專門定義了一種 “語法糖” 來實(shí)現(xiàn)注解, 作用是針對(duì)一個(gè)類/方法, 進(jìn)行額外的解釋說明, 賦予額外的含義).
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
// 把當(dāng)前的類和HTTP請(qǐng)求的路徑關(guān)聯(lián)起來
// 根據(jù)url中的路徑, 通過這個(gè)注解, 就可以確定調(diào)用服務(wù)器中的哪個(gè)類的方法
// 路徑和servlet是一一對(duì)應(yīng)關(guān)系
@WebServlet("/hello")
public class HelloServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// 不要調(diào)用父類的構(gòu)造方法
//super.doGet(req, resp);
// 控制臺(tái)輸出hello world
System.out.println("hello world");
// 構(gòu)造resp對(duì)象
// 寫入resp中的body中, 最終由tomcat寫入網(wǎng)卡, 發(fā)送至客戶端
resp.getWriter().write("hello world");
}
}要理解, 一個(gè)Servlet程序中, 可以有很多的Servlet類, 每個(gè)Servlet類都可以關(guān)聯(lián)到不同的路徑(對(duì)應(yīng)到不同的資源), 多個(gè)Servlet就可以實(shí)現(xiàn)了不同的邏輯和功能, 路徑和Servlet類之間是一對(duì)一的關(guān)系.
上面的代碼中要注意, 直接快捷鍵重寫的doGet方法, 默認(rèn)調(diào)用的是父類的doGet, 而父類是直接寫回一個(gè)錯(cuò)誤的, 所以一定要注意將默認(rèn)調(diào)用的super.doGet()刪除, 然后再去實(shí)現(xiàn)自己的邏輯;



代碼中resp.getWriter()會(huì)得到一個(gè)Writer對(duì)象, 這里的writer對(duì)象是從屬于resp對(duì)象的, 此處的write操作其實(shí)是往resp的body部分進(jìn)行寫入, 等resp對(duì)象整個(gè)構(gòu)造好了, tomcat會(huì)統(tǒng)一轉(zhuǎn)成HTTP相應(yīng)的格式, 寫入socket.
5??第五步, 打包程序.
Maven默認(rèn)打的是jar包, jar包中只含有普通的java程序(.class), 而Tomcat中的webapp需要的war包, war包是Tomcat部署webapp使用的壓縮文件, 可以包含一些前端代碼和特定的目錄結(jié)構(gòu), 以方便后續(xù)Tomcat識(shí)別這些內(nèi)容, 來加載webapp.
首先需要在pom.xml文件寫入以下內(nèi)容, 與dependencies同一級(jí), 目的是為了使打包的壓縮格式為war和指定包名.
<!-- 描述要包類型 -->
<packaging>war</packaging>
<!-- 聲明包名 -->
<build>
<finalName>hello_servlet</finalName>
</build>然后點(diǎn)擊IDEA右側(cè)的Maven, 雙擊Lifecycle下的package, 此時(shí)Maven就會(huì)幫助我們打包項(xiàng)目, 項(xiàng)目中會(huì)出現(xiàn)一個(gè)target目錄, 打包后的war包就在其中.


這里的打包其實(shí)是完成了以下操作:
- 檢查代碼中是否存在一些依賴, 依賴是否下載好.
- 把代碼進(jìn)行編譯, 生成.class文件.
- 把這些.class 文件, 以及 web.xml按照一定的格式進(jìn)行打包.
6??第六步, 將程序部署到Tomcat將打包好的war包拷貝到Tomcat中的webapps目錄中即可.

7??第七步, 驗(yàn)證程序運(yùn)行結(jié)果.
啟動(dòng)Tomcat服務(wù)器, 在瀏覽器地址欄中訪問http://127.0.0.1:8080/hello_servlet/hello可以得到一個(gè)顯示hello world的頁面, 同時(shí)命令行運(yùn)行的Tomcat也會(huì)輸出hello world.


要注意這里的兩級(jí)路徑, 第一級(jí)路徑是webapps目錄下的war包文件名, 也叫做Context Path; 第二級(jí)路徑是我們代碼中在注解標(biāo)注的路徑, 也叫做Servlet Path; 即/war包名(一級(jí)路徑)/注解標(biāo)注的路徑(二級(jí)路徑).
這里的war包名稱為hello_servlet, 注解標(biāo)注的路徑是/hello; 所以綜合起來, 加上前面的協(xié)議域名和端口號(hào), URL就是http://127.0.0.1:8080/hello_servlet/hello.
總結(jié)一下, 這里有7步, 依次是, 創(chuàng)建Maven項(xiàng)目, 引入依賴, 創(chuàng)建webapp目錄結(jié)構(gòu), 編寫Servlet代碼, 打包, 部署, 驗(yàn)證.
2. 在idea中集成Tomcat
Smart Tomcat是IDEA上的一個(gè)插件, 上面所介紹的Servlet程序運(yùn)行步驟其實(shí)是可以簡(jiǎn)化的, 主要是第五步和第六步, 每次修改都需要重新打包和部署, 其實(shí)是有點(diǎn)麻煩的, Smart Tomcat就幫助我們解決了這個(gè)問題.
Smart Tomcat插件安裝和使用步驟如下:
1??第一步, 打開IDEA設(shè)置, 找到插件選項(xiàng), 即Plugins.

2??第二步, 在Marketplace搜索Smart Tomcat, 下載安裝即可.

3??第三步, 重啟IDEA, 配置Smart Tomcat.

點(diǎn)擊+新增配置, 選中Smart Tomcat

配置Tomcat

配置好后點(diǎn)擊綠色的倒三角形就可以運(yùn)行Servlet程序了.

看到下圖中的提示, Tomcat就啟動(dòng)成功了, 不過這個(gè)不能訪問Tomcat的歡迎頁面.

要注意, 使用Smart Tomcat啟動(dòng)Tomcat和之前介紹的是有本質(zhì)區(qū)別的, Smart Tomcat的工作原理, 不是說把war包拷貝(webapps里是不變的), 使用Smart Tomcat支持啟動(dòng)的時(shí)候顯示指定一個(gè)特定的webapp目錄, 相當(dāng)于是讓Tomcat加載單個(gè)webapp運(yùn)行, IDEA直接調(diào)用Tomcat, 讓Tomcat加載當(dāng)前項(xiàng)目中的目錄, 這里沒有打包, 拷貝和解壓縮的過程.
這兩種部署, 其實(shí)是兩種Tomcat運(yùn)行方式, 對(duì)于Context Path的定位不同; 如果是直接拷貝war包的方式部署, Context Path就是war包名; 如果是Smart Tomcat方式部署, 這里的Context Path是可以自己配置的.
IDEA專業(yè)版還直接集成了Tomcat Server插件, 不過還是沒有這個(gè)簡(jiǎn)單好用.
3. 常見錯(cuò)誤
??常見錯(cuò)誤1: 404404 表示用戶訪問的資源不存在, 大概率是 URL 的路徑寫的不正確.

或者是你的webapp沒有正確被部署: web.xml 寫錯(cuò)了, 文件名錯(cuò)了, 文件路徑錯(cuò)了, 文件位置錯(cuò)了…
??常見錯(cuò)誤2: 405
405 表示對(duì)應(yīng)的 HTTP 請(qǐng)求方法沒有實(shí)現(xiàn), 比如我們?cè)跒g覽器發(fā)了個(gè)GET請(qǐng)求, 但是代碼里沒寫doGet, 此時(shí)就會(huì)出現(xiàn)405.


還有可能就是重寫的方法中沒有去掉默認(rèn)調(diào)用的父類方法, 如super.doGet


??常見錯(cuò)誤3:500
往往是Servlet代碼中拋出異常導(dǎo)致的, 這個(gè)問題最好解決, 因?yàn)?00的時(shí)候頁面日志中會(huì)明確告訴你異常調(diào)用棧, 告訴你是哪一行代碼出的異常比如我們給代碼來一個(gè)空指針異常.


??常見錯(cuò)誤4: 出現(xiàn)空白頁面
方法中邏輯沒有寫類似resp.getWriter().write()這樣的代碼
??常見錯(cuò)誤5: 頁面無法訪問最常見的原因就是Tomcat沒有啟動(dòng)或者崩潰, 我們把Tomcat關(guān)了, 就會(huì)出現(xiàn)頁面無法訪問的情況, Tomcat無法啟動(dòng), 很可能是端口沖突了.

到此這篇關(guān)于Tomcat的安裝與使用,Maven與Servlet的使用的文章就介紹到這了,更多相關(guān)Tomcat Maven與Servlet的使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
IntelliJ?IDEA中配置Tomcat超詳細(xì)教程
這篇文章主要介紹了IntelliJ?IDEA中配置Tomcat超詳細(xì)教程,需要的朋友可以參考下2022-08-08
Tomcat中catalina.out 和 catalina.log的區(qū)別和用途詳解
本文主要介紹了Tomcat中catalina.out 和 catalina.log的區(qū)別和用途詳解,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02
Tomcat 請(qǐng)求資源[/XXX/]不可用問題的解決方法
Tomcat 請(qǐng)求的資源[/XXX/]不可用問題,通過正確路徑訪問(運(yùn)行代碼時(shí)候自動(dòng)打開瀏覽器訪問的路徑),和錯(cuò)誤路徑訪問,它的表現(xiàn)是不一樣的,本文就來介紹一下解決方法2023-11-11
eclipse中的項(xiàng)目無法添加到tomcat中的處理方法
這篇文章主要介紹了eclipse中的項(xiàng)目無法添加到tomcat中,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-05-05
Tomcat端口僅允許本地訪問設(shè)置的兩種實(shí)現(xiàn)方法
要設(shè)置Tomcat端口僅允許本地訪問,可以通過兩種主要方式實(shí)現(xiàn),下面通過配置文件結(jié)合相關(guān)實(shí)例給大家詳細(xì)講解,感興趣的朋友跟隨小編一起看看吧2025-05-05
tomcat單機(jī)多實(shí)例的實(shí)現(xiàn)
這篇文章主要介紹了tomcat單機(jī)多實(shí)例的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08
tomcat6_apache2.2_ajp 負(fù)載均衡加集群實(shí)戰(zhàn)分享
這篇文章主要介紹了秀脫linux筆記之tomcat6_apache2.2負(fù)載均衡加集群實(shí)戰(zhàn)篇,需要的朋友可以參考下2014-12-12
Tomcat服務(wù)器的啟動(dòng)及啟動(dòng)失敗可能的原因分析
這篇文章主要介紹了Tomcat服務(wù)器的啟動(dòng)及啟動(dòng)失敗可能的原因分析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-12-12

