類添加注解@RequestMapping報錯HTTP Status 404的解決
類添加注解@RequestMapping報錯HTTP Status 404
為類添加了@RequestMapping注解后,運(yùn)行報錯404,路徑不對,找了半天才發(fā)現(xiàn)原來是我的視圖解析器的前綴沒有寫正確
在WEB-INF前面少加了一個/,加上之后運(yùn)行ok
springMVC使用@RequestMapping遇到的問題
1.簡介
@RequestMapping既可以定義Controller,也可以定義方法Controller中的方法,主要是用來映射url的請求路徑
2.屬性簡介
value
:指定請求的實(shí)際地址,指定的地址可以是URI Template 模式(后面將會說明);method
:指定請求的method類型, GET、POST、PUT、DELETE等;consumes
:指定處理請求的提交內(nèi)容類型(Content-Type),例如application/json, text/html;produces
:指定返回的內(nèi)容類型,僅當(dāng)request請求頭中的(Accept)類型中包含該指定類型才返回params
:指定request中必須包含某些參數(shù)值是,才讓該方法處理。headers
:指定request中必須包含某些指定的header值,才能讓該方法處理請求。
3.測試使用時遇到的問題
先看源代碼:
@RequestMapping(value="/api/{wayName}") public void getData(@PathVariable String wayName,@RequestParam("appkey") int appkey, @RequestParam("type") int type){ System.out.println("wayName:"+wayName+"--appkey:"+appkey+"--type:"+type); } @RequestMapping(value="/test") public void test(){ System.out.println("test----------commmin"); }
訪問/api/test時報HTTP Status 404 -錯誤,訪問/test時也會報 HTTP Status 404 -錯誤
有時會報Circular view path [list]: would dispatch back to the current handler URL [/list] again錯誤
在網(wǎng)上查了資料,了解到每個controller在初始化,如果你沒有聲明viewResolver,spring會注冊一個默認(rèn)的viewResolver給controlller,這個viewResolver本人簡單的理解就是一個呈現(xiàn)處理結(jié)果到前端的工具,如果你視圖的路徑和請求路徑一樣,就會出現(xiàn)死循環(huán)。
或者你如果在你的方法中沒有返回數(shù)據(jù)到前端,這兩個錯誤都有可能會出現(xiàn)。
所以最終的解決方法就是返回數(shù)據(jù)到前端
解決后的源碼是
@RequestMapping(value="/api/{wayName}") @ResponseBody public String getData(@PathVariable String wayName,@RequestParam("appkey") String appkey, @RequestParam("type") String type){ return "wayName:"+wayName+"--appkey:"+appkey+"--type:"+type; } @RequestMapping(value="/test") public void test(HttpServletRequest request,HttpServletResponse response) throws IOException{ response.getWriter().print("Hello World"); }
其中@ResponseBody是表示返回的數(shù)據(jù)輸出到輸出流中。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
java中關(guān)于移位運(yùn)算符的demo與總結(jié)(推薦)
下面小編就為大家?guī)硪黄猨ava中關(guān)于移位運(yùn)算符的demo與總結(jié)(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-05-05Java實(shí)現(xiàn)鼠標(biāo)拖放功能的方法
這篇文章主要介紹了Java實(shí)現(xiàn)鼠標(biāo)拖放功能的方法,很實(shí)用的功能,需要的朋友可以參考下2014-07-07spring boot+jwt實(shí)現(xiàn)api的token認(rèn)證詳解
這篇文章主要給大家介紹了關(guān)于spring boot+jwt實(shí)現(xiàn)api的token認(rèn)證的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一學(xué)習(xí)學(xué)習(xí)吧2018-12-12