springboot控制層傳遞參數(shù)為非必填值的操作
springboot控制層傳遞參數(shù)為非必填值
需求是查詢?nèi)吭u(píng)價(jià)時(shí),后端控制層的level為非必選項(xiàng),即為空。
這里@RequestParam(required=false)就可以處理level為非必須值的情況。
如果沒(méi)有這一行,當(dāng)level為空時(shí),會(huì)返回空白頁(yè)面。
這里要注意一下!是個(gè)坑


Controller層接收參數(shù)的形式
1.參數(shù)存在于請(qǐng)求路徑中
1.請(qǐng)求的參數(shù):http://localhost:8080/postman/123
123作為參數(shù)傳遞到后臺(tái),接收方法:使用@PathVariable注解
@PathVariable是spring3.0的一個(gè)新功能:接收請(qǐng)求路徑中占位符的值
@RestController
@RequestMapping("postman")
public class controllerTest {
/*
localhost:8080/postman/***
*/
@PostMapping("{id}")
public void testPost(@PathVariable("id") Long id){
System.out.println("接收到的參數(shù)"+id);
}
}
2.請(qǐng)求的參數(shù):http://localhost:8080/postman?id=123
接收方法:使用注解@RequestParam(“id”)
/*
localhost:8080/postman?id=1234
*/
@GetMapping
public void testPost2(@RequestParam("id") Long id){
System.out.println("接收到的參數(shù)"+id);//接收到的參數(shù)1234
}
2.參數(shù)在請(qǐng)求體中
1.參數(shù)以K-V鍵值對(duì)的形式發(fā)送

后臺(tái)接收
@PostMapping
public void testPost3(Person person){
System.out.println("接收到的參數(shù)"+person);//接收到的參數(shù)Person(name=笑爛臉, age=23, sex=男)
}
2.參數(shù)以json對(duì)象的形式發(fā)送
注:前后端分離的項(xiàng)目,參數(shù)一般都是以JSON對(duì)象的形式發(fā)送

后臺(tái)接收
@PostMapping
public void testPost4(@RequestBody Person person){前后端分離的項(xiàng)目,前端傳遞的數(shù)據(jù)都是json對(duì)象,所以后臺(tái)想要接受對(duì)應(yīng)的數(shù)據(jù),必須要加@RequestBody注解,否則接收不了
System.out.println("接收到的參數(shù)"+person);//接收到的參數(shù)Person(name=笑爛臉, age=23, sex=男)
}
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家.
- springboot websocket集群(stomp協(xié)議)連接時(shí)候傳遞參數(shù)
- Spring Boot/VUE中路由傳遞參數(shù)的實(shí)現(xiàn)代碼
- Spring?Boot獲取resources目錄下的文件三種方式詳解
- Springboot中com.mysql.cj.jdbc.Driver在yml文件中爆紅的原因解讀
- SpringBoot之如何指定配置文件啟動(dòng)
- springboot實(shí)現(xiàn)jar運(yùn)行復(fù)制resources文件到指定的目錄(思路詳解)
- springboot項(xiàng)目中引入本地依賴(lài)jar包并打包到lib文件夾中
- spring boot項(xiàng)目同時(shí)傳遞參數(shù)和文件的多種方式代碼演示
相關(guān)文章
基于Mybatis plus 自動(dòng)代碼生成器的實(shí)現(xiàn)代碼
本文通過(guò)實(shí)例代碼給大家介紹了基于Mybatis-plus 自動(dòng)代碼生成器的相關(guān)知識(shí),非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-05-05
SpringBoot實(shí)現(xiàn)接口防刷的五種方案
接口防刷是保障系統(tǒng)安全與穩(wěn)定性的重要措施,惡意的高頻請(qǐng)求不僅會(huì)消耗服務(wù)器資源,還可能導(dǎo)致數(shù)據(jù)異常,甚至系統(tǒng)癱瘓,本文將介紹在SpringBoot框架下實(shí)現(xiàn)接口防刷的5種技術(shù)方案,需要的朋友可以參考下2025-04-04
Java Springboot 重要知識(shí)點(diǎn)整理匯總
Spring Boot作為微服務(wù)中最好的Java框架,本文主要為大家整理匯總了七個(gè)Spring Boot的重要知識(shí)點(diǎn),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2021-11-11
Java數(shù)據(jù)結(jié)構(gòu)之順序表的實(shí)現(xiàn)
線性表(linear?list)是n個(gè)具有相同特性的數(shù)據(jù)元素的有限序列。?線性表是一種在實(shí)際中廣泛使用的數(shù)據(jù)結(jié)構(gòu),本文將用Java實(shí)現(xiàn)順序表,感興趣的可以了解一下2022-09-09
如何在springboot中配置和使用mybatis-plus
這篇文章主要給大家介紹了關(guān)于如何在springboot中配置和使用mybatis-plus的相關(guān)資料,MyBatis?Plus是MyBatis的增強(qiáng)版,旨在提供更多便捷的特性,減少開(kāi)發(fā)工作,同時(shí)保留了MyBatis的靈活性和強(qiáng)大性能,需要的朋友可以參考下2023-11-11
Mybatis分頁(yè)插件PageHelper的配置和簡(jiǎn)單使用方法(推薦)
在使用Java Spring開(kāi)發(fā)的時(shí)候,Mybatis算是對(duì)數(shù)據(jù)庫(kù)操作的利器了。這篇文章主要介紹了Mybatis分頁(yè)插件PageHelper的配置和使用方法,需要的朋友可以參考下2017-12-12
spring boot下 500 404 錯(cuò)誤頁(yè)面處理的方法
本篇文章主要介紹了spring boot下 500 404 錯(cuò)誤頁(yè)面處理的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-04-04

