spring-boot-route(一)Controller接收參數的幾種方式

Controller接收參數的經常使用方式整體能夠分爲三類。第一類是Get請求經過拼接url進行傳遞,第二類是Post請求經過請求體進行傳遞,第三類是經過請求頭部進行參數傳遞。java

1 @PathVariable接收參數

請求方式:localhost:7001/param/123git

請求示例:github

代碼示例:spring

@GetMapping("{id}")
public String getPathVariable(@PathVariable String id){
    return "id="+id;
}

2 @RequestParam接收參數

使用這個註解須要注意兩個點,一是加了這個參數後則請求中必須傳遞這個參數,二是@RequestParam這個註解能夠指定名字,請求參數必須和指定的這個名字相同,若是不指定,則默認爲具體參數名。微信

請求方式:localhost:7001/param/getParam?myId=18app

請求示例:spring-boot

代碼示例:學習

@GetMapping("getParam")
public String getRequestParam(@RequestParam("myId") String id){
    return "id="+id;
}

3 無註解傳參

這種方式和2對比,最大的區別就是這個參數不是必傳的,請求路徑上能夠不傳遞。url

請求方式:localhost:7001/param/getString?id=18spa

請求示例:

代碼示例:

@GetMapping("getString")
public String getString(String id){
    return "id="+id;
}

4 HttpServletRequest接收參數

請求方式:localhost:7001/param/getRequest?id=18

請求示例:

代碼示例:

@GetMapping("getRequest")
public String getRequest(HttpServletRequest request){
    String id = request.getParameter("id");
    return "id="+id;
}

5 @RequestBody接收請求體參數

這種方式通常用來傳遞實體對象,加了這個註解後,參數也是必傳的。

請求方式:{"id":18}

請求示例:

代碼示例:

@PostMapping("getBody")
public String getBody(@RequestBody String id){
    return "id="+id;
}

6 @RequestHeader接收請求頭參數

請求示例:

代碼示例:

@PostMapping("getHeader")
public String getHeader(@RequestHeader String id){
    return "id="+id;
}

此是spring-boot-route系列的第一篇文章,這個系列的文章都比較簡單,主要目的就是爲了幫助初次接觸Spring Boot 的同窗有一個系統的認識。本文已收錄至個人github,歡迎各位小夥伴star

githubhttps://github.com/binzh303/s...

點關注、不迷路

若是以爲文章不錯,歡迎關注點贊收藏,大家的支持是我創做的動力,感謝你們。

若是文章寫的有問題,請不要吝嗇,歡迎留言指出,我會及時覈查修改。

若是你還想更加深刻的瞭解我,能夠微信搜索「Java旅途」進行關注。回覆「1024」便可得到學習視頻及精美電子書。天天7:30準時推送技術文章,讓你的上班路不在孤獨,並且每個月還有送書活動,助你提高硬實力!

相關文章
相關標籤/搜索