最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Tomcat部署war包并成功訪問(wèn)網(wǎng)頁(yè)詳細(xì)圖文教程

 更新時(shí)間:2023年12月26日 11:58:19   作者:別時(shí)須清歡  
Tomcat是目前web開(kāi)發(fā)中非常流行的Web服務(wù)器,這篇文章主要給大家介紹了關(guān)于Tomcat部署war包并成功訪問(wèn)網(wǎng)頁(yè)的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下

一. 什么是Servlet

servlet是一種實(shí)現(xiàn)動(dòng)態(tài)頁(yè)面所需的技術(shù), 是一組Tomcat提供給程序員的API,幫助程序員高效開(kāi)發(fā)的一個(gè)web app

二. 如何利用Tomcat部署war包

1. 創(chuàng)建一個(gè)maven項(xiàng)目

使用idea創(chuàng)建一個(gè)maven項(xiàng)目

只需要填寫(xiě)好存放位置, 并選擇Maven項(xiàng)目即可. Name選項(xiàng)可根據(jù)自己需要填寫(xiě)

創(chuàng)建過(guò)后進(jìn)入idea, 首次創(chuàng)建時(shí), 會(huì)有一個(gè)加載過(guò)程, 稍等一會(huì)兒即可, 完成后會(huì)自動(dòng)生成一個(gè)pom.xml文件

2. 引入依賴(lài)

進(jìn)入中央倉(cāng)庫(kù)(中央倉(cāng)庫(kù)首頁(yè)地址), 在搜索欄進(jìn)行搜索servlet, 選擇 Java Servlet API ,即可到達(dá)以下界面選擇自己需要的版本號(hào)(Servlet版本號(hào)必須和Tomcat匹配)進(jìn)行下載即可(對(duì)應(yīng)servlet和Tomcat查詢(xún)地址)

點(diǎn)擊下載對(duì)應(yīng)版本號(hào)進(jìn)入該頁(yè)面

選擇Maven對(duì)話(huà)框, 將下面maven下面藍(lán)色對(duì)話(huà)框中的內(nèi)容復(fù)制到pom.xml文件中

輸入 dependencies標(biāo)簽, 將上述復(fù)制內(nèi)容粘貼到該標(biāo)簽內(nèi)引入依賴(lài). 首次引入時(shí), 框內(nèi)文字有些地方在idea上是紅色的, 此時(shí)idea會(huì)自動(dòng)將該依賴(lài)對(duì)應(yīng)的jar包下載到本地, 等待下載完成刷新就不紅了. 此時(shí), 基本上我們的引入servlet就算完成了

除了將maven框內(nèi)的內(nèi)容復(fù)制到pom.xml文件中, 還可以選擇下載對(duì)應(yīng)的jar包, 然后將其拖拽到idea中即可

3. 創(chuàng)建目錄

當(dāng)上述都完成以后, 在idea項(xiàng)目欄中可以看到如下幾個(gè)包

  • src包 : 代表源代碼所在目錄
  • main/java : 表示源代碼的根目錄, 后續(xù)創(chuàng)建的.java文件都會(huì)在該目錄中
  • main/resources : 表示項(xiàng)目的一些資源文件所在目錄
  • test/java : 表示測(cè)試代碼的根目錄

除了上述這些創(chuàng)建maven項(xiàng)目過(guò)后本身就有的文件, 還需要自身創(chuàng)建幾個(gè)文件

1.創(chuàng)建webapp文件

注意一定是在main目錄下創(chuàng)建一個(gè)名為 webapp 的目錄

2.創(chuàng)建web.xml

先在 webapp 目錄下創(chuàng)建一個(gè) WEB-INF 目錄

接著在 創(chuàng)建的 WEB-INF 目錄下創(chuàng)建一個(gè) web.xml 文件

完成過(guò)后, 在項(xiàng)目欄中便有了如下目錄關(guān)系

3.編寫(xiě) web.xml 文件

在web.xml 文件中直接粘貼以下代碼, 可能會(huì)有紅色報(bào)錯(cuò), 此處并非代碼錯(cuò)誤, 而是ieda對(duì)于除java格式外的其他檢測(cè)并不一定十分準(zhǔn)確, 可以嘗試?yán)胏trl + enter 處理報(bà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>

4. 編寫(xiě)代碼

在main/java下創(chuàng)建一個(gè)java類(lèi)并繼承 HttpServlet, 重寫(xiě)doGet方法.

@WebServlet("/hello")
// 父類(lèi)中已經(jīng)有了doGet. 此處希望用子類(lèi)代替父類(lèi)的
public class HolleServlet extends HttpServlet {
    @Override
    // 由Tomcat來(lái)自動(dòng)調(diào)用
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        // 父類(lèi)的doGet方法只是返回一個(gè)錯(cuò)誤頁(yè)面 需要注釋掉
        //super.doGet(req, resp);
        System.out.println("hello world");

        // resp.getWriter()返回的是一個(gè)PrintWriter,這是一個(gè)打印輸出流
        // resp.getWriter().write 只能打印文本輸出格式(包括標(biāo)簽), 但不可以打印對(duì)象
        resp.getWriter().write("hello");
    }
}

需要注意的事以下幾點(diǎn):

1.在這個(gè)類(lèi)上方加上@WebServlet(“/hello”) 注解 : 表示Tomcat收到的請(qǐng)求中, 只有路徑為/hello的請(qǐng)求才會(huì)去調(diào)用這個(gè)類(lèi)的代碼 (該注解必須加, 才能關(guān)聯(lián)一個(gè)路徑)

2.重寫(xiě)doGet方法(不一定為doGet方法, 需要構(gòu)造什么請(qǐng)求就重寫(xiě)什么) , req表示收到的HTTP請(qǐng)求, resp表示要構(gòu)造的HTTP響應(yīng). 當(dāng)Tomcat收到Get請(qǐng)求時(shí), 則會(huì)調(diào)用該方法.

3.HttpServletRequest 表示 HTTP 請(qǐng)求. Tomcat 按照 HTTP 請(qǐng)求的格式把 字符串 格式的請(qǐng)求轉(zhuǎn)成了一個(gè)HttpServletRequest 對(duì)象. 后續(xù)想獲取請(qǐng)求中的信息(方法, url, header, body 等) 都是通過(guò)這個(gè)對(duì)象來(lái)獲取.

4.HttpServletResponse 表示 HTTP 響應(yīng). 代碼中把響應(yīng)對(duì)象構(gòu)造好(構(gòu)造響應(yīng)的狀態(tài)碼, header, body 等)

5.resp.getWriter() 會(huì)獲取到一個(gè)流對(duì)象, 通過(guò)這個(gè)流對(duì)象就可以寫(xiě)入一些數(shù)據(jù), 寫(xiě)入的數(shù)據(jù)會(huì)被構(gòu)造成一個(gè) HTTP 響應(yīng)的 body 部分, Tomcat 會(huì)把整個(gè)響應(yīng)轉(zhuǎn)成字符串, 通過(guò) socket 寫(xiě)回給瀏覽器.

5. 打包程序

使用maven窗口進(jìn)行打包

找到里面的打包功能雙擊即可

需要注意的是, 當(dāng)我們此時(shí)直接點(diǎn)擊打包, 生成默認(rèn)是一個(gè)名稱(chēng)復(fù)雜的 jar 包, 但是 Tomcat 認(rèn)的是 war 包, 因此 我們需要修改一些 pom.xml 文件, 讓其默認(rèn)打包為一個(gè)自命名的 war包.

通過(guò) packaging 標(biāo)簽表明打包形式, finalName標(biāo)簽表明 war 包名稱(chēng). 完成后, 重新點(diǎn)擊打包此時(shí)就可以獲得一個(gè)自命名的 war 包了.

該 war 包位于一個(gè) target 目錄下

6. 部署程序

將上面的 war 包復(fù)制一份到 Tomcat/webapps 下

啟動(dòng) Tomcat (Tomcat/bin/startup.bat) 加載 war 包, 在 webapps目錄下便會(huì)生成一個(gè)同 war 包同名的目錄, 此時(shí)便算部署完成了

7. 檢驗(yàn)程序

運(yùn)行 Tomcat 打開(kāi)網(wǎng)頁(yè)輸入127.01.01:8080/0310/hello, 得到如下頁(yè)面說(shuō)明程序正確

這里, /0310 即為第一級(jí)目錄, 也就是你的 Context Path 路徑(包名路徑) , hello 為Servlet Path 路徑, 也就是你注解中的路徑

至此, Tomcat 部署 war 包并訪問(wèn)就算告成了 !!!

總結(jié)

到此這篇關(guān)于Tomcat部署war包并成功訪問(wèn)網(wǎng)頁(yè)的文章就介紹到這了,更多相關(guān)Tomcat部署war包訪問(wèn)網(wǎng)頁(yè)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Tomcat 7.0多端口配置詳解

    Tomcat 7.0多端口配置詳解

    這篇文章主要介紹了Tomcat 7.0多端口配置詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-06-06
  • netty 實(shí)現(xiàn)tomcat的示例代碼

    netty 實(shí)現(xiàn)tomcat的示例代碼

    這篇文章主要介紹了netty 實(shí)現(xiàn)tomcat,主要包括自定義基礎(chǔ)類(lèi)及netty 服務(wù)端的示例代碼詳解,通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-06-06
  • 關(guān)于給Tomcat設(shè)置maxPostSize的問(wèn)題及注意事項(xiàng)

    關(guān)于給Tomcat設(shè)置maxPostSize的問(wèn)題及注意事項(xiàng)

    這篇文章主要介紹了關(guān)于給Tomcat設(shè)置maxPostSize的問(wèn)題及注意事項(xiàng),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-07-07
  • Tomcat使用Log4j輸出catalina.out日志

    Tomcat使用Log4j輸出catalina.out日志

    今天小編就為大家分享一篇關(guān)于Tomcat使用Log4j輸出catalina.out日志,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-03-03
  • 阿里云Centos7下安裝Redis及tomcat設(shè)置自啟動(dòng)的方法

    阿里云Centos7下安裝Redis及tomcat設(shè)置自啟動(dòng)的方法

    這篇文章主要介紹了阿里云Centos7下安裝Redis及tomcat設(shè)置自啟動(dòng)的方法,本文實(shí)例代碼相結(jié)合的形式給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2018-03-03
  • Linux中使用Docker容器構(gòu)建Tomcat容器的完整教程

    Linux中使用Docker容器構(gòu)建Tomcat容器的完整教程

    Apache?Tomcat?是一款廣泛使用的開(kāi)源?Java?應(yīng)用服務(wù)器,適用于運(yùn)行?Java?Servlet?和?JSP?應(yīng)用程序,本教程將詳細(xì)介紹如何在?Docker?中構(gòu)建并運(yùn)行一個(gè)?Tomcat?容器,并提供相應(yīng)的步驟和解釋,需要的朋友可以參考下
    2024-09-09
  • redission-tomcat快速實(shí)現(xiàn)從單機(jī)部署到多機(jī)部署詳解

    redission-tomcat快速實(shí)現(xiàn)從單機(jī)部署到多機(jī)部署詳解

    這篇文章主要介紹了redission-tomcat快速實(shí)現(xiàn)從單機(jī)部署到多機(jī)部署詳解,本文介紹一個(gè)基于redis的tomcat session管理開(kāi)源項(xiàng)目:redission-tomcat,可無(wú)代碼侵入式地快速實(shí)現(xiàn)session共享,需要的朋友可以參考下
    2019-06-06
  • Tomcat starup.bat腳本開(kāi)機(jī)自啟動(dòng)的實(shí)現(xiàn)

    Tomcat starup.bat腳本開(kāi)機(jī)自啟動(dòng)的實(shí)現(xiàn)

    本文主要介紹了Tomcat starup.bat腳本開(kāi)機(jī)自啟動(dòng)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • Maven3.8.1使用Tomcat8插件啟動(dòng)項(xiàng)目的方法(親測(cè)有效)

    Maven3.8.1使用Tomcat8插件啟動(dòng)項(xiàng)目的方法(親測(cè)有效)

    在本地maven的settings.xml文件中添加阿里云鏡像,然后在pom.xml文件中添加tomcat8插件的配置,重新下載依賴(lài),運(yùn)行tomcat8:run命令,成功啟動(dòng)項(xiàng)目,本文介紹Maven3.8.1使用Tomcat8插件啟動(dòng)項(xiàng)目的方法,感興趣的朋友一起看看吧
    2024-11-11
  • intelli idea中配置Tomcat找不到的解決辦法

    intelli idea中配置Tomcat找不到的解決辦法

    這篇文章主要介紹了intelli idea中配置Tomcat找不到的解決辦法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09

最新評(píng)論

普兰县| 达日县| 个旧市| 连州市| 左云县| 资阳市| 吉隆县| 达孜县| 会东县| 台山市| 连平县| 阳曲县| 嘉善县| 美姑县| 曲麻莱县| 曲阳县| 行唐县| 乌苏市| 买车| 扎赉特旗| 巴林左旗| 绵阳市| 德州市| 周口市| 涟水县| 保亭| 岗巴县| 广东省| 临漳县| 陕西省| 古浪县| 瓦房店市| 马公市| 平乐县| 和林格尔县| 琼海市| 富蕴县| 富阳市| 台南市| 高邮市| 常山县|