欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringMVC訪問controller報錯404的解決辦法(總結(jié)超詳細)

 更新時間:2024年05月01日 08:23:41   作者:NoSuchUserExpection  
純注解配置SpringMVC程序,使用tomcat8.5.95版本啟動,能啟動成功并且訪問index.jsp頁面,但是訪問/save時出現(xiàn)404無法訪問,本文給大家介紹了SpringMVC訪問controller報錯404的解決辦法,文章總結(jié)的非常詳細,需要的朋友可以參考下

問題描述:

純注解配置SpringMVC程序,使用tomcat8.5.95版本啟動,能啟動成功并且訪問index.jsp頁面,但是訪問/save時出現(xiàn)404無法訪問,程序如下

解決辦法:

一.更換高版本tomcat

以下的所有方法我全部都嘗試過,但還是訪問controller 404,最后更換了最新版本的tomcat才解決,所以在此把該方法列到第一個

二.檢查jdk與spring版本是否兼容

Spring 框架的不同版本對于 JDK 的要求是有所區(qū)別的。一般來說,每個 Spring 框架版本都會聲明它所支持的 JDK 版本范圍。以下是一些常見的 Spring 框架版本對 JDK 的要求:

1. Spring Framework 5.x:

- Spring 5.x 支持 JDK 8 及以上版本。這意味著你可以在 JDK 8、9、10、11、12、13、14、15 和 16 上運行 Spring Framework 5.x

2. Spring Framework 6.x:

- Spring Framework 6基于JDK 17構(gòu)建。換句話講,若想使用Spring Framework 6那么你的JDK環(huán)境最低要求JDK 17

因此,如果你在使用 Spring MVC 6.x 版本,需要確保你的 JDK 版本符合其要求。當然,具體的兼容性要求最好還是查閱官方文檔或者發(fā)布說明,以確保 JDK 和 Spring 版本之間的兼容性。

三.刪項目重寫一個

這一步驟是一種常見的排查問題的方法,通常用于排除項目中可能存在的難以定位的問題。通過刪除并重新編寫項目,你可以確保項目的結(jié)構(gòu)和配置是干凈的,并且可以排除一些潛在的問題

操作起來很簡單,文件夾里找到項目直接刪除即可

四.WEB-INF中導入lib

在傳統(tǒng)的基于 Servlet 的 Web 應用中,通常會將項目所需的第三方庫(JAR 文件)放置在 WEB-INF/lib 目錄下。這些 JAR 文件包含了項目所需的各種依賴庫

在現(xiàn)代的 Maven 或 Gradle 項目中,這些依賴通常會被管理工具自動下載并放置在項目的類路徑中,而不需要手動放置在 WEB-INF/lib 目錄下。但是IDEA有時會出錯,導致WEB-INF下沒有l(wèi)ib目錄,這時候就需要自己手動添加了

在設置的項目結(jié)構(gòu)中,選擇工件

在WEB-INF目錄下手動添加一個名稱為lib的文件

lib的位置別錯了

選擇庫文件,里面的東西全部添加

保存,退出,重新運行tomcat查看訪問controller是否報錯404

五.如果返回的數(shù)據(jù)為json,確保引入jackson依賴

在一個典型的 Spring MVC 應用中,當你向客戶端返回一個對象時,Spring MVC 默認使用 HTTP 消息轉(zhuǎn)換器(HTTP Message Converters)來將對象轉(zhuǎn)換為合適的響應格式。這意味著,如果你的控制器方法返回一個對象,Spring MVC 將根據(jù)請求的 Accept 頭部信息,將該對象轉(zhuǎn)換為適當?shù)捻憫袷?,比?JSON 或 XML

在默認情況下,Spring MVC 提供了一些內(nèi)置的消息轉(zhuǎn)換器,用于處理各種格式的數(shù)據(jù)。但是,如果你想要返回 JSON 格式的數(shù)據(jù),通常會引入 Jackson 庫(如 jackson-databind)來實現(xiàn) JSON 的序列化和反序列化。Jackson 庫提供了 MappingJackson2HttpMessageConverter,它可以將 Java 對象轉(zhuǎn)換為 JSON 格式的數(shù)據(jù),并且能夠與 Spring MVC 集成

因此,當你在 Spring MVC 中想要返回 JSON 格式的數(shù)據(jù)時,通常會引入 Jackson 庫,并確保 Spring MVC 配置正確地使用了 MappingJackson2HttpMessageConverter,以便將對象轉(zhuǎn)換為 JSON 格式的響應

如果在一個純注解的 Spring MVC 應用中,你想要返回 JSON 格式的數(shù)據(jù),通常需要引入 Jackson 庫,并且在控制器方法上使用 @RestController 或 @ResponseBody 注解來指示該方法返回 JSON 格式的數(shù)據(jù)。如果沒有正確引入 Jackson 庫或配置 Spring MVC 來處理 JSON 格式的數(shù)據(jù),可能會導致返回的數(shù)據(jù)格式不符合預期,或者在訪問控制器方法時出現(xiàn) 404 錯誤

六.確保所有的注解都加上了

1.Bean相關(guān)

檢查@Controller注解,將該類注冊為Bean

檢查@RequestMapping是否加上,和后面的訪問路徑是否寫錯

檢查@ResponseBody是否加上,無返回值可忽略

2.config相關(guān)

(1) SpringMvcConfig

是否掃到了bean所在的包

(2)  AbstractDispatcherServletInitializer實現(xiàn)是否正確

七.刪除.m2文件下的repository

在 Java 開發(fā)中,".m2" 目錄通常是 Maven 的本地倉庫,用于存儲項目的依賴庫。當你在項目中使用 Maven 進行依賴管理時,Maven 會從遠程倉庫下載所需的依賴,并將其緩存到本地的 ".m2" 目錄下。這樣做可以加快構(gòu)建過程,并在沒有網(wǎng)絡連接時也能夠構(gòu)建項目

有時候本地的依賴庫可能會因為各種原因而損壞或不完整,導致構(gòu)建失敗或者出現(xiàn)奇怪的行為。通過刪除并重新下載,可以確保本地的依賴庫是完整的

八.webapp文件未被設為資源

仔細看看webapp文件夾上有沒有這個小點,沒有的話需要重新設置

還是在設置里的項目結(jié)構(gòu)中,選擇Fact

選擇+新建web,選擇你所創(chuàng)建的webapp的路徑,確認返回,即可設置成功

以上就是SpringMVC訪問controller報錯404的解決辦法(總結(jié)超詳細)的詳細內(nèi)容,更多關(guān)于SpringMVC訪問controller404的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評論