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

springMVC返回Http響應的實現(xiàn)

 更新時間:2025年03月02日 10:04:33   作者:鴿鴿程序猿  
本文主要介紹了在Spring Boot中使用@Controller、@ResponseBody和@RestController注解進行HTTP響應返回的方法,具有一定的參考價值,感興趣的可以了解一下

一、返回頁面

步驟如下:

我們先要在static目錄下創(chuàng)建我們的HTML文件。

HTML源碼:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Index</title>
</head>
<body>
    Hello,Spring MVC,我是Index??.
</body>
</html>
  • 在源碼的類注解前面要使用@Controller注解,返回的頁面名要與創(chuàng)建的文件名一致,并且加上后綴,且必須加上反斜杠 /

源碼:

@RequestMapping("/response")
@Controller
public class ResponseController {
    @RequestMapping("/r1")
    public String r1() {
        return "/index.html";
    }
}

瀏覽器訪問結(jié)果:

二、@Controller和@ResponseBody與RestController區(qū)別

SpringBoot默認掃描路徑是啟動類所在路徑(包),和子目錄。

@RestController的作用就是告訴Spring這個類需要掃描。
@RestController = @ResponseBody+@Controller

在早期編程,前后端不分離時@Controller就是負責返回視圖的, @ResponseBody就是負責返回數(shù)據(jù)的。

  • 當一個類中既要返回頁面,又要返回數(shù)據(jù)的時候,就在類上加上@Controller,在類中返回數(shù)據(jù)的方法上加@ResponseBody。
  • 當一個類全部返回數(shù)據(jù)的時候,就在類上加上@Controller + @ResponseBody,或者@RestController。
  • 當一個頁面只返回頁面時,在類上加@Controller。

三、返回HTML代碼?段

直接跟寫HTML代碼一樣,寫就行了,注意這種算返回數(shù)據(jù)。
代碼:

	@RequestMapping("/r2")
    public String r2() {
        return "<h2>我是二級標題</h2>";
    }

訪問結(jié)果:

如果這就是一個文本,只需要在@RequestMapping的products中注明類型即可。

@RequestMapping(value = "/r2", produces = "text/pain")
    public String r2() {
        return "<h2>我是二級標題</h2>";
    }

四、返回JSON

后端?法返回結(jié)果為對象直接就是返回的JSON。

源碼:

 @RequestMapping("/r3")
    public Person r3() {
        Person person = new Person();
        person.setId(1);
        person.setName("zhangsan");
        person.setPassword("123");
        return person;
    }

結(jié)果:

五、HttpServletResponse設置狀態(tài)碼

Spring MVC會根據(jù)我們?法的返回結(jié)果?動設置響應狀態(tài)碼, 程序員也可以?動指定狀態(tài)碼。
通過類HttpServletResponse下的setStatue來設置。

源碼:

 @RequestMapping("/r4")
    public String r4(HttpServletResponse response) {
        response.setStatus(404);
        return "設置狀態(tài)碼成功";
    }

結(jié)果:

六、設置Header

6.1 HttpServletResponse設置

通過類HttpServletResponse下的setHeader來設置。
在方法中前一個參數(shù)是header的參數(shù)名,后一個是值。

源碼:

@RequestMapping("/r5")
    public String r5(HttpServletResponse response) {
        response.setHeader("myHeader","444");
        return "設置Header成功";
    }

結(jié)果:

6.2 @RequestMapping設置

@RequestMapping的組成如下:

我們通過設置 produces屬性的值, 設置響應的報頭Content-Type。
源碼:

@RequestMapping(value = "/r6",produces = "application/json")
    public String r6() {
        return "{\"success\":true}";
    }

結(jié)果:

到此這篇關于springMVC返回Http響應的實現(xiàn)的文章就介紹到這了,更多相關springMVC返回Http響應內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家! 

相關文章

  • Java接口統(tǒng)一樣式返回模板的實現(xiàn)

    Java接口統(tǒng)一樣式返回模板的實現(xiàn)

    這篇文章主要介紹了Java接口統(tǒng)一樣式返回模板的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-12-12
  • Java集合系列之LinkedHashMap源碼分析

    Java集合系列之LinkedHashMap源碼分析

    這篇文章主要為大家詳細介紹了Java集合系列之LinkedHashMap源碼分析,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • Springboot?HTTP如何調(diào)用其他服務

    Springboot?HTTP如何調(diào)用其他服務

    這篇文章主要介紹了Springboot?HTTP如何調(diào)用其他服務,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • Mybatis中 XML配置詳解

    Mybatis中 XML配置詳解

    這篇文章主要介紹了Mybatis中 XML配置詳解的相關資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-01-01
  • Spring?Boot?實現(xiàn)?WebSocket?的代碼示例

    Spring?Boot?實現(xiàn)?WebSocket?的代碼示例

    WebSocket?協(xié)議是獨立的基于?TCP?協(xié)議。它與?HTTP?的唯一關系是,它的握手會被?HTTP?服務器解釋為?Upgrade?請求,接下來通過本文給大家介紹Spring?Boot?實現(xiàn)?WebSocket?示例詳解,需要的朋友可以參考下
    2022-04-04
  • feign之間傳遞oauth2?token的問題及解決方案

    feign之間傳遞oauth2?token的問題及解決方案

    這篇文章主要介紹了feign之間傳遞oauth2?token的問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • 深入分析java文件路徑的詳解

    深入分析java文件路徑的詳解

    本篇文章是對java文件路徑進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • Java ArrayList的基本概念和作用及動態(tài)數(shù)組的機制與性能

    Java ArrayList的基本概念和作用及動態(tài)數(shù)組的機制與性能

    在Java中,ArrayList是一個實現(xiàn)了List接口的動態(tài)數(shù)組,它可以根據(jù)需要自動增加大小,因此可以存儲任意數(shù)量的元素,這篇文章主要介紹了探秘Java ArrayList的基本概念和作用及動態(tài)數(shù)組的機制與性能,需要的朋友可以參考下
    2023-12-12
  • Mybatis空值關聯(lián)的問題解析及解決方案

    Mybatis空值關聯(lián)的問題解析及解決方案

    這篇文章給大家介紹了Mybatis空值關聯(lián)的問題解析及解決方案,文中通過代碼示例介紹的非常詳細,對大家的學習或工作有一定的幫助,需要的朋友可以參考下
    2024-01-01
  • Java詳解AVL樹的應用

    Java詳解AVL樹的應用

    AVL樹是高度平衡的二叉樹,它的特點是AVL樹中任何節(jié)點的兩個子樹的高度最大差別為1,本文主要給大家介紹了Java如何實現(xiàn)AVL樹,需要的朋友可以參考下
    2022-07-07

最新評論