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

前臺(tái):

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

后臺(tái)接收:

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot利用自定義注解實(shí)現(xiàn)多數(shù)據(jù)源
這篇文章主要為大家詳細(xì)介紹了SpringBoot如何利用自定義注解實(shí)現(xiàn)多數(shù)據(jù)源效果,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,需要的可以了解一下2022-10-10
SpringBoot實(shí)現(xiàn)重試機(jī)制的四種方案
在分布式系統(tǒng)和微服務(wù)架構(gòu)中,服務(wù)調(diào)用失敗是不可避免的現(xiàn)象,網(wǎng)絡(luò)不穩(wěn)定、服務(wù)過(guò)載、臨時(shí)故障等因素都可能導(dǎo)致調(diào)用失敗,重試機(jī)制作為一種處理臨時(shí)性故障的解決方案,能夠有效提高系統(tǒng)的可用性,需要的朋友可以參考下2025-04-04
SpringMVC?RESTFul實(shí)現(xiàn)列表功能
這篇文章主要為大家介紹了SpringMVC?RESTFul實(shí)現(xiàn)列表功能詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05
Java實(shí)現(xiàn)動(dòng)態(tài)日歷效果
這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)動(dòng)態(tài)日歷效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-07-07
Spring?Boot中自動(dòng)執(zhí)行sql腳本的方法實(shí)例
在SpringBoot的架構(gòu)中,DataSourceInitializer類可以在項(xiàng)目啟動(dòng)后初始化數(shù)據(jù),我們可以通過(guò)自動(dòng)執(zhí)行自定義sql腳本初始化數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于Spring?Boot中自動(dòng)執(zhí)行sql腳本的相關(guān)資料,需要的朋友可以參考下2022-01-01
java如何創(chuàng)建一個(gè)jdbc程序詳解
使用Java程序來(lái)操作數(shù)據(jù)庫(kù),后者更加直接的話就是使用Java程序來(lái)發(fā)送SQL語(yǔ)句的技術(shù)稱之為:JDBC。下面這篇文章主要給大家介紹了關(guān)于利用java如何創(chuàng)建一個(gè)jdbc程序的相關(guān)資料,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-11-11
Java實(shí)現(xiàn)數(shù)字轉(zhuǎn)成英文的方法
這篇文章主要介紹了Java實(shí)現(xiàn)數(shù)字轉(zhuǎn)成英文的方法,涉及java數(shù)組與字符串的相關(guān)操作技巧,需要的朋友可以參考下2015-05-05

