SpringMVC中使用@PathVariable綁定路由中的數(shù)組的方法
問題描述
在開發(fā)批量刪除功能時,往往都是多條數(shù)據(jù),所以前臺需要傳一個數(shù)組給后臺,但是怎么在URL中綁定一個數(shù)組,同時在后臺用@PathVariable來綁定呢?
原來的做法
后臺:

前臺:

以上是之前項目的截圖,直接拿過來啦?。?!😁😁😁
后臺以@RequestBody接收一個數(shù)組,但是前臺需要發(fā)送一個request請求, 傳入請求方法的類型delete, 并且傳入一個body, 但在寫華軟項目時, 張喜碩組長看到,說這樣寫并不好,要在url中綁定一個數(shù)組,在前臺以逗號隔開。delete方法是不建議傳輸實體的主體
delete請求用于請求服務(wù)器刪除所請求URI(統(tǒng)一資源標(biāo)識符,Uniform Resource Identifier)所標(biāo)識的資源。DELETE請求后指定資源會被刪除
該如何解決呢?如何在url綁定數(shù)組呢?
解決方法
后臺:
@DeleteMapping("{clusterNodeId}/hosts/{hostsId}")
public void deleteClusterNodeByHostList(@PathVariable Long clusterNodeId, @PathVariable Long[] hostsId) {
clusterNodeService.deleteClusterNodeByHostList(clusterNodeId, hostsId);
}
由url接收一個數(shù)組,使用@PathVariable綁定這個數(shù)組
前臺:
public deleteClusterNodeByHostList(
clusterNodeId: number,
hostsId: any[]): Observable<ClusterNode> {
return this.http.delete(`${this.baseUrl}/${clusterNodeId.toString()}/hosts/${hostsId.join(',')}`);
}
使用join 對數(shù)組進行處理,以逗號的形式隔開,傳給后臺
url:

后臺接收:

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot利用自定義注解實現(xiàn)多數(shù)據(jù)源
這篇文章主要為大家詳細(xì)介紹了SpringBoot如何利用自定義注解實現(xiàn)多數(shù)據(jù)源效果,文中的示例代碼講解詳細(xì),具有一定的借鑒價值,需要的可以了解一下2022-10-10
Spring?Boot中自動執(zhí)行sql腳本的方法實例
在SpringBoot的架構(gòu)中,DataSourceInitializer類可以在項目啟動后初始化數(shù)據(jù),我們可以通過自動執(zhí)行自定義sql腳本初始化數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于Spring?Boot中自動執(zhí)行sql腳本的相關(guān)資料,需要的朋友可以參考下2022-01-01
Java實現(xiàn)數(shù)字轉(zhuǎn)成英文的方法
這篇文章主要介紹了Java實現(xiàn)數(shù)字轉(zhuǎn)成英文的方法,涉及java數(shù)組與字符串的相關(guān)操作技巧,需要的朋友可以參考下2015-05-05

