Spring boot route Controller接收參數(shù)常用方法解析
Controller接收參數(shù)的常用方式總體可以分為三類(lèi)。第一類(lèi)是Get請(qǐng)求通過(guò)拼接url進(jìn)行傳遞,第二類(lèi)是Post請(qǐng)求通過(guò)請(qǐng)求體進(jìn)行傳遞,第三類(lèi)是通過(guò)請(qǐng)求頭部進(jìn)行參數(shù)傳遞。
1 @PathVariable接收參數(shù)
請(qǐng)求方式:localhost:7001/param/123
請(qǐng)求示例:

代碼示例:
@GetMapping("{id}")
public String getPathVariable(@PathVariable String id){
return "id="+id;
}
2 @RequestParam接收參數(shù)
使用這個(gè)注解需要注意兩個(gè)點(diǎn),一是加了這個(gè)參數(shù)后則請(qǐng)求中必須傳遞這個(gè)參數(shù),二是@RequestParam這個(gè)注解可以指定名字,請(qǐng)求參數(shù)必須和指定的這個(gè)名字相同,如果不指定,則默認(rèn)為具體參數(shù)名。
請(qǐng)求方式:localhost:7001/param/getParam?myId=18
請(qǐng)求示例:

代碼示例:
@GetMapping("getParam")
public String getRequestParam(@RequestParam("myId") String id){
return "id="+id;
}
3 無(wú)注解傳參
這種方式和2對(duì)比,最大的區(qū)別就是這個(gè)參數(shù)不是必傳的,請(qǐng)求路徑上可以不傳遞。
請(qǐng)求方式:localhost:7001/param/getString?id=18
請(qǐng)求示例:

代碼示例:
@GetMapping("getString")
public String getString(String id){
return "id="+id;
}
4 HttpServletRequest接收參數(shù)
請(qǐng)求方式:localhost:7001/param/getRequest?id=18
請(qǐng)求示例:

代碼示例:
@GetMapping("getRequest")
public String getRequest(HttpServletRequest request){
String id = request.getParameter("id");
return "id="+id;
}
5 @RequestBody接收請(qǐng)求體參數(shù)
這種方式一般用來(lái)傳遞實(shí)體對(duì)象,加了這個(gè)注解后,參數(shù)也是必傳的。
請(qǐng)求方式:{“id”:18}
請(qǐng)求示例:

代碼示例:
@PostMapping("getBody")
public String getBody(@RequestBody String id){
return "id="+id;
}
6 @RequestHeader接收請(qǐng)求頭參數(shù)
請(qǐng)求示例:

代碼示例:
@PostMapping("getHeader")
public String getHeader(@RequestHeader String id){
return "id="+id;
}
此是spring-boot-route系列的第一篇文章,這個(gè)系列的文章都比較簡(jiǎn)單,主要目的就是為了幫助初次接觸Spring Boot 的同學(xué)有一個(gè)系統(tǒng)的認(rèn)識(shí)。
github:https://github.com/binzh303/spring-boot-route
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 詳解SpringBoot Controller接收參數(shù)的幾種常用方式
- SpringBoot Controller Post接口單元測(cè)試示例
- 解決Spring Boot 正常啟動(dòng)后訪問(wèn)Controller提示404問(wèn)題
- spring boot中controller的使用及url參數(shù)的獲取方法
- Springboot 使用 JSR 303 對(duì) Controller 控制層校驗(yàn)及 Service 服務(wù)層 AOP 校驗(yàn) 使用消息資源文件對(duì)消息國(guó)際化
- SpringBoot之Controller的使用詳解
- Spring Boot(三)之找回熟悉的Controller,Service
- Spring Boot的Controller控制層和頁(yè)面
相關(guān)文章
Java8時(shí)間api之LocalDate/LocalDateTime的用法詳解
在項(xiàng)目中,時(shí)間的使用必不可少,而java8之前的時(shí)間api?Date和Calander等在使用上存在著很多問(wèn)題,于是,jdk1.8引進(jìn)了新的時(shí)間api-LocalDateTime,本文就來(lái)講講它的具體使用吧2023-05-05
結(jié)合mybatis-plus實(shí)現(xiàn)簡(jiǎn)單不需要寫(xiě)sql的多表查詢(xún)
這篇文章主要給大家介紹了關(guān)于結(jié)合mybatis-plus實(shí)現(xiàn)簡(jiǎn)單不需要寫(xiě)sql的多表查詢(xún)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用mybatis-plus具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09
Java中BigDecimal的equals方法和compareTo方法的區(qū)別詳析
這篇文章主要給大家介紹了關(guān)于Java中BigDecimal的equals方法和compareTo方法區(qū)別的相關(guān)資料,對(duì)于BigDecimal的大小比較,用equals方法的話(huà)會(huì)不僅會(huì)比較值的大小,還會(huì)比較兩個(gè)對(duì)象的精確度,而compareTo方法則不會(huì)比較精確度,只比較數(shù)值的大小,需要的朋友可以參考下2023-11-11
Java?ArrayList實(shí)現(xiàn)刪除指定位置的元素
目標(biāo):list中有0到39共40個(gè)元素,刪除其中索引是10、20、30的元素。本文為大家整理了三個(gè)不同的方法,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-01-01
Java Clone(類(lèi)的復(fù)制)實(shí)例代碼
Java Clone(類(lèi)的復(fù)制)實(shí)例代碼,需要的朋友可以參考一下2013-03-03
Java Swing實(shí)現(xiàn)餐廳點(diǎn)餐系統(tǒng)源碼(收藏版)
這篇文章主要介紹了Java Swing實(shí)現(xiàn)餐廳點(diǎn)餐系統(tǒng)源碼,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-02-02
java + dom4j.jar提取xml文檔內(nèi)容
這篇文章主要為大家詳細(xì)介紹了java + dom4j.jar提取xml文檔內(nèi)容,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-08-08

