處理@PathVariable注解允許參數(shù)為空、允許不傳參數(shù)的問題
說明
設(shè)置可以不傳:

但是請求的時候,仍然提示projectId必傳:

這是因為url要求帶參,屬于REST參數(shù)。
解決辦法
設(shè)置多個url path即可,有的傳REST參,有的不傳。當然required必須是false

這個問題以前解決過,——還是要溫習(xí)一下比較好呀
補充:接收參數(shù)注解@PathVariable 與 @RequestParam與 不使用注解接收參數(shù)的情況
@RequestParam使用場景:
@RequestParam: 顧名思義,獲取請求參數(shù)的
@RequestParam的兩個屬性:value 獲取值 , required 為 true 必填
1. 1前端地址情景:
http://localhost:8989/SSSP/emps?pageNo=2
如果想獲取地址中的 pageNo的值 ‘2'> ,則使用@RequestParam
1.2.前端BootStrap請求情景:
傳單個參數(shù):
queryParams:{id,id} // (此時id已獲取到j(luò)s,如var id = row.id )
傳多個參數(shù):
queryParams:function(params){
return{
type:#(‘type').val,
accountName:#(‘a(chǎn)ccountName').val
}
}
1.3 后臺獲取上面兩種傳參方式:
Public Object getXiFeiList(@RequestParam Map<String,Object> params){
//使用方式一:使用get(“key”)獲取后使用
params.get(“id”);
//使用方式二:作為Query的參數(shù)創(chuàng)建對象,直接使用
Query query = new Query(params);
List<DictDo> dictList = dictSevice.list(query);
}
@PathVariable使用場景:
@PathVariable:顧名思義,獲取url地址中的一部分值
1. 前端地址單參數(shù)情景:
http://localhost:8989/SSSP/emp/type
如果想獲取地址中的 emp/type 中的 ‘type ',則使用@PathVariable
2. 前端地址多參數(shù)情景
http://localhost:8989/SSSP/emp/7/5
如果想獲取地址中的 emp/7/5 中的‘7''5',則使用@PathVariable
3. 后臺獲?。?/h3>
接收單個參數(shù)
String addD(@PathVariable(“type”) String type)
接收多個參數(shù)
String addD(@PathVariable(“type”) String type,@PathVariable(“id”) Long id)
不使用注解就可以接收參數(shù)的情況
情況1. 前端Js中發(fā)送ajax請求data:{‘id',id}情景:
remove(id){
function(){
$.ajax(){
url:prefix+”/remove”,
type:”post”,
data:{‘id',id}//ajax使用data傳值時使用@PathVariable
.......
}
}
}
情況1.后臺獲取:
public R remove(Long id){} // 獲取后就可以直接使用
情況2. 前端JS中發(fā)送ajax請求data: $('#addLoanForm').serialize()情景:
$.ajax({
cache: true,
type: "POST",
url:"/loansign/signProject/creditSave",
data: $('#addLoanForm').serialize()
//重要:將前臺表單中的數(shù)據(jù)序列化,序列化的內(nèi)容是name
}
情況2.后臺獲?。?/p>
public R creditSave( SignCreditDO signCredit){}//使用對象接收數(shù)據(jù)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
Java內(nèi)部類應(yīng)用之靜態(tài)內(nèi)部類應(yīng)用示例
這篇文章主要介紹了Java內(nèi)部類應(yīng)用之靜態(tài)內(nèi)部類應(yīng)用,結(jié)合實例形式分析了Java靜態(tài)內(nèi)部類的原理、功能、用法及相關(guān)操作注意事項,需要的朋友可以參考下2019-09-09
springboot關(guān)于容器啟動事件總結(jié)
在本篇文章里小編給大家整理的是一篇關(guān)于springboot容器啟動事件相關(guān)知識點,需要的朋友們學(xué)習(xí)下。2019-10-10
解決RestTemplate 請求接收自定義400+ 或500+錯誤
這篇文章主要介紹了解決RestTemplate 請求接收自定義400+ 或500+錯誤,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-08-08
Java使用Scala實現(xiàn)尾遞歸優(yōu)化來解決爆棧問題
Scala?作為一種多范式的編程語言,結(jié)合了面向?qū)ο蠛秃瘮?shù)式編程的特性,在?Scala?中,尾遞歸?是通過編譯器優(yōu)化來防止棧溢出問題的,尾遞歸優(yōu)化是一種特殊的優(yōu)化方式,可以讓遞歸調(diào)用不使用新的棧幀,所以本文介紹了在Java項目中如何使用Scala實現(xiàn)尾遞歸優(yōu)化來解決爆棧問題2024-10-10
解決mybatis plus 分頁查詢有條數(shù),total和pages都是零的問題
這篇文章主要介紹了解決mybatis plus 分頁查詢有條數(shù),total和pages都是零的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-11-11

