Tomcat10.0以上版本編譯成功但報錯HTTP狀態 404

Tomcat正常啟動且項目已成功部署,但出現404錯誤。
在這里插入圖片描述

HTTP狀態 404 - 未找到package org.example;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;/*** 這是一個Servlet類,需要實現Servlet類*/@WebServlet(urlPatterns = "/hello")
public class HelloServlet extends HttpServlet
{@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException{//1.獲取請求參數值String name = req.getParameter("name");//2.響應結果到瀏覽器resp.getWriter().write("Hello " + name + ",你好");//super.doGet(req, resp);}
}

這是因為我使用的是Tomcat 10.1.34版本,需要使用Jakarta EE而不是Java EE。

修改代碼如下:

package org.example;import jakarta.servlet.ServletException;  // 注意:jakarta,不是javax
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;@WebServlet(urlPatterns = "/hello")
public class HelloServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {String name = req.getParameter("name");resp.setContentType("text/html;charset=UTF-8");resp.getWriter().write("Hello " + name + ",你好");}
}

檢查Maven依賴

確保pom.xml使用正確的依賴:

<dependency><groupId>jakarta.servlet</groupId><artifactId>jakarta.servlet-api</artifactId><version>6.0.0</version><scope>provided</scope>
</dependency>

重新構建和部署

在IntelliJ中:Stop服務器
Build → Rebuild Project
重新啟動Tomcat
修改import語句后解決問題。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/912892.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/912892.shtml
英文地址,請注明出處:http://en.pswp.cn/news/912892.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

在Flask項目中用Git LFS管理大文件(PDF)的完整實踐

在Flask項目中用Git LFS高效管理大文件(以農機說明書PDF為例) 背景與需求 在農機管理系統等實際項目中,經常需要上傳和管理大量超大文件(如200MB以上的PDF說明書、圖片等)。如果直接用Git管理這些大文件,不僅會導致倉庫膨脹、clone/pull速度變慢,還可能遇到推送失敗等…

樸素貝葉斯算法案例演示及Python實現

目錄 一、基本原理二、案例演示2.1 未平滑處理2.2 Laplace平滑處理 三、Python實現 一、基本原理 樸素貝葉斯思想&#xff1a;依靠特征概率去預測分類&#xff0c;針對于代分類的樣本&#xff0c;會求解在該樣本出現的條件下&#xff0c;各個類別出現的概率&#xff0c;哪個類…

RAG從入門到高階(二):Retrieve-and-Rerank

在上一篇教程中&#xff0c;我們了解了 Naive RAG 的基本原理和實現。它就像一個剛剛學會查找資料的新手&#xff0c;雖然能找到一些信息&#xff0c;但有時候找到的并不夠精準&#xff0c;甚至會有一些無關的干擾。 今天&#xff0c;我們將介紹 Retrieve-and-Rerank RAG&…

【腳本】Linux磁盤目錄掛載腳本(不分區)

以下是一個不帶分區&#xff0c;直接掛載整個磁盤到指定目錄的腳本。該腳本會檢查磁盤是否已掛載&#xff0c;自動創建文件系統&#xff08;可選&#xff09;&#xff0c;并配置開機自動掛載&#xff1a; #!/bin/bash# 磁盤直接掛載腳本&#xff08;不分區&#xff09; # 使用…

壁紙網站分享

壁紙網站鏈接&#xff1a; 1.Microsoft Design - Wallpapers&#xff1a;https://wallpapers.microsoft.design/?refwww.8kmm.com 2.哲風壁紙&#xff1a;https://haowallpaper.com/wallpaperForum 3.壁紙湖&#xff1a;https://bizihu.com/ 4.極簡壁紙&#xff1a;https://bz…

XILINX FPGA如何做時序分析和時序優化?

時序分析和時序優化是FPGA開發流程中關鍵步驟&#xff0c;確保設計在目標時鐘頻率下正確運行&#xff0c;避免時序違例&#xff08;如建立時間或保持時間不足&#xff09;。以下以Xilinx Kintex-7系列FPGA為例&#xff0c;詳細介紹時序分析和時序優化的方法、工具、流程及實用技…

linux screen輕松管理長時間運行的任務

以下是針對 Alpine Linux 環境下 screen 的安裝與使用指南&#xff0c;結合遷移數據場景的具體操作步驟&#xff1a; 1. 安裝 screen? 在 Alpine Linux 中需通過 apk 安裝&#xff08;非默認預裝&#xff09;&#xff1a; apk add screen 驗證安裝&#xff1a; screen --…

VR制作公司業務范圍

VR制作公司概念、能力與服務范圍 虛擬現實&#xff08;Virtual Reality, VR&#xff09;技術&#xff0c;作為當代科技的前沿領域&#xff0c;通過計算機技術模擬出真實或虛構的世界環境&#xff0c;使用戶能夠沉浸其中并進行交互體驗。VR制作公司&#xff0c;是這一領域的專業…

STM32之28BYJ-48步進電機驅動

目錄 一、引言 二、28BYJ-48步進電機簡介 2.1 基本特性 2.2 內部結構 2.3 工作模式 2.4 驅動原理 2.5 性能特點 2.6 驅動方案 2.7 使用注意事項 三、ULN2003驅動板簡介 3.1 基本概述 3.2 電路結構 3.3 驅動原理 3.4 接口定義 3.5 使用注意事項 四、…

TDSQL如何查出某一列中的逗號數量

在 TDSQL 中&#xff0c;要統計某一列里逗號的數量&#xff0c;可借助字符串函數來實現。下面為你介紹具體的實現方法&#xff1a; sql SELECT your_column,LENGTH(your_column) - LENGTH(REPLACE(your_column, ,, )) AS comma_count FROM your_table;下面對這段 SQL 進行詳細…

如何避免服務器出現故障情況?

服務器作為存儲數據信息的重要網絡設備&#xff0c;能夠保護企業重要數據的安全性&#xff0c;但是隨著網絡攻擊的不斷拓展&#xff0c;各個行業中的服務器也會遭受到不同類型的網絡攻擊&#xff0c;嚴重的會導致服務器業務中斷出現故障&#xff0c;給企業帶來巨大的經濟損失。…

C++ 優先級隊列

一、引言 隊列的特性是先進先出。優先級隊列的本質是一個有序隊列&#xff0c;根據成員的優先級&#xff0c;對隊列中的成員進行排序。優先級隊列默認是大頂堆&#xff0c;即堆頂元素最大 二、常用函數 empty()size()top()push()emplace()pop()swap() 三、代碼示例 class …

學習筆記(27):線性回歸基礎與實戰:從原理到應用的簡易入門

線性回歸&#xff1a;通過擬合線性方程&#xff08;如 \(y w_1x_1 w_2x_2 b\)&#xff09;預測房價、銷售額等連續變量&#xff0c;需掌握特征標準化、正則化&#xff08;L1/L2&#xff09;防止過擬合。應用場景&#xff1a;金融領域的股價預測、電商用戶消費金額預估。 線性…

kubesphere安裝openelb

kubesphere安裝openelb 1.安裝openelb 2.修改配置文件 1.命令直接修改 $ kubectl edit configmap kube-proxy -n kube-system ipvs:strictARP: truemode: "ipvs"重啟kube-proxy組件 $ kubectl rollout restart daemonset kube-proxy -n kube-system 2.通過界面去修…

數據庫10:MySQL的數據類型與約束和屬性設置,數據模式

一.數據類型 整數類型&#xff08;integer types&#xff09; 數據類型字節有符號范圍無符號范圍說明tinyint1-128 ~ 1270 ~ 255非常小的整數smallint2-32,768 ~ 32,7670 ~ 65,535小整數mediumint3-8,388,608 ~ 8,388,6070 ~ 16,777,215中等整數int4-2,147,483,648 ~ 2,147,4…

uniapp項目中node_modules\sass\sass.dart.js的體積過大怎么處理

用Node-Sass替代&#xff08;如果適用&#xff09;&#xff1a;雖然Dart Sass是Sass的主要實現之一&#xff0c;但有時它可能會比Node-Sass占用更多的空間。如果你不需要Dart Sass特有的功能&#xff0c;可以考慮切換到Node-Sass&#xff08;注意Node-Sass已停止維護&#xff0…

界面組件DevExpress WPF中文教程:Grid - 如何獲取節點?

DevExpress WPF擁有120個控件和庫&#xff0c;將幫助您交付滿足甚至超出企業需求的高性能業務應用程序。通過DevExpress WPF能創建有著強大互動功能的XAML基礎應用程序&#xff0c;這些應用程序專注于當代客戶的需求和構建未來新一代支持觸摸的解決方案。 無論是Office辦公軟件…

Kalibr解毒填坑(一):相機標定失敗

文章目錄 ??簡介?? 解毒踩坑?? 主點錯誤??簡介 相機內參標定通常涉及確定焦距(fx, fy)、主點(cx, cy)、畸變系數(徑向和切向)等參數。Kalibr是一個開源的標定工具,支持多相機、IMU和聯合標定,適用于復雜的傳感器系統。 但kalibar標定相機內參受到數據和配置影…

Swift 的基礎設計哲學是 “通過模塊化組合實現安全與效率的平衡“,就像用標準化工業零件建造摩天大樓

一、基礎模塊&#xff1a;地基與鋼結構&#xff08;Basic Types & Collections&#xff09; 比喻&#xff1a;積木與工具箱&#xff0c;決定建筑的穩定性和容量。場景&#xff1a;搭建程序的基礎結構&#xff0c;如變量、數據類型、運算符。包含&#xff1a;基本語法、運算…

【RK3568+PG2L50H開發板實驗例程】Linux部分/FPGA dma_memcpy_demo 讀寫案例

本原創文章由深圳市小眼睛科技有限公司創作&#xff0c;版權歸本公司所有&#xff0c;如需轉載&#xff0c;需授權并注明出處&#xff08;www.meyesemi.com) 1.案例簡介 案例功能描述&#xff1a;ARM端利用 PCIe總線對 FPGA的 DRAM執行讀寫操作。應用程序通過 ioctl函數觸發 …