SpringMVC如何自定義響應(yīng)的HTTP狀態(tài)碼
自定義響應(yīng)的HTTP狀態(tài)碼
SpringMVC自定義響應(yīng)的HTTP狀態(tài)碼有兩種方法,一種是在返回方法上面加上@ResponseStatus注解,另一個(gè)種是在方法內(nèi)部使用response.setStatus()方法。
注解方式
@ResponseStatus一般是作用在異常類或者方法上,帶有@ResponseStatus注解的異常類會(huì)被ResponseStatusExceptionResolver 解析,可以實(shí)現(xiàn)自定義的一些異常,同時(shí)在頁(yè)面上進(jìn)行顯示。
作用在方法上時(shí),將會(huì)修改response的狀態(tài)碼
示例:
@RequestMapping("/204test") @ResponseStatus(value=HttpStatus.NO_CONTENT) public void ping(HttpServletResponse response) throws Exception { ? ? System.out.println("20444"); }
response.setStatus()方式
示例:
? public ModelAndView respond(HttpServletResponse response) throws Exception { ? ? response.setStatus(status); ? ? response.setContentType(contentType); ? ? response.setHeader("Content-Disposition", "Inline; filename=" + jobName + "Properties.csv"); ? ? response.getWriter().write(message); ? ? return null; ? } }
http狀態(tài)碼406(Not Acceptable)
先看看406狀態(tài)碼解釋
—HTTP 406錯(cuò)誤是HTTP協(xié)議狀態(tài)碼的一種,表示無(wú)法使用請(qǐng)求的內(nèi)容特性來(lái)響應(yīng)請(qǐng)求的網(wǎng)頁(yè)
大概意思就是請(qǐng)求和程序是沒有問題的,但是響應(yīng)內(nèi)容無(wú)法解析
這個(gè)時(shí)候想到返回的是一個(gè)對(duì)象,頁(yè)面需要接受的話需要Jackson的支持,果斷想到問題:缺少Jackson包,修改pom后update project
問題成功解決??!
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java源碼解析之Gateway請(qǐng)求轉(zhuǎn)發(fā)
今天給大家?guī)?lái)的是關(guān)于Java的相關(guān)知識(shí),文章圍繞著Gateway請(qǐng)求轉(zhuǎn)發(fā)展開,文中有非常詳細(xì)介紹及代碼示例,需要的朋友可以參考下2021-06-06Java函數(shù)式編程(一):你好,Lambda表達(dá)式
這篇文章主要介紹了Java函數(shù)式編程(一):你好,Lambda表達(dá)式,本文講解了新老函數(shù)式編程的一些變化,需要的朋友可以參考下2014-09-09java中為什么要謹(jǐn)慎使用Arrays.asList、ArrayList的subList
這篇文章主要介紹了java中為什么要謹(jǐn)慎使用Arrays.asList、ArrayList的subList,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02Java報(bào)錯(cuò)org.hibernate.TypeMismatchException的解決方法
在Java開發(fā)領(lǐng)域,尤其是涉及到數(shù)據(jù)持久化的項(xiàng)目中,Hibernate是一款廣泛使用的強(qiáng)大工具,然而,可能會(huì)在使用過程中遭遇各種報(bào)錯(cuò),其中org.hibernate.TypeMismatchException就是一個(gè)讓人頭疼的問題,下面我們一起深入剖析這個(gè)報(bào)錯(cuò)信息2024-11-11Java+Freemarker實(shí)現(xiàn)根據(jù)XML模板文件生成Word文檔
這篇文章主要為大家詳細(xì)介紹了Java如何使用Freemarker實(shí)現(xiàn)根據(jù)XML模板文件生成Word文檔,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以學(xué)習(xí)一下2023-11-11對(duì)Jpa中Entity關(guān)系映射中mappedBy的全面理解
這篇文章主要介紹了對(duì)Jpa中Entity關(guān)系映射中mappedBy的全面理解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12