欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

springboot接口接收數(shù)組及多個參數(shù)的問題及解決

 更新時間:2022年11月21日 11:14:05   作者:Levi_Tang  
這篇文章主要介紹了springboot接口接收數(shù)組及多個參數(shù)的問題及解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

springboot接口接收數(shù)組及多個參數(shù)問題

本例為個人經(jīng)歷,必然存在認(rèn)知局限與不足,歡迎指正以及提供更好方法。 

若接口中需要接受數(shù)組,那么接口應(yīng)該如何寫呢?

一般而言我們會想到

@PostMapping("/xxxx")
public String test(List list){
    do sth;
}

假設(shè)我們寫的接口正確,寫完接口我希望使用postman來測試一下

params中似乎無法傳數(shù)組呀

誒?在body中用json格式傳參數(shù)不就好了嗎!

于是,修改接口

@PostMapping("/xxxx")
public String test(@RequestBody List list){
    do sth;
}

問題解決~

但是往往我們寫接口的時候需要接收的參數(shù)不止簡單數(shù)組,有可能是一個非常復(fù)雜的對象。

這里我們將問題假設(shè)為需要接收的參數(shù)為對象+數(shù)組,如下。

{
	"abroad": {
		"id":5,
		"studentId":1,
		"projectName":"哈佛訪學(xué)"
	},
	"params": ["id","studentId","projectName"]
}

自然地,我們一般會這么想:

@PostMapping("/xxxx")
public String test(@RequestBody Abroad abroad,@RequestBody List<String> params){
    do sth;
}

但是這是錯的??!

如果使用@RequestBody,只允許有一個參數(shù)。那希望上傳多個對象怎么辦呢?對!就是包個對象?。☆愃葡旅孢@樣:

@PostMapping("/xxxx")
public String test(@RequestBody ParaDTO paraDTO){
    do sth;
}
 
class ParaDTO{
    Abroad abroad;
    List<String> params;
}

解決~

springboot接收復(fù)雜集合參數(shù),集合對象

springboot中,我們有這樣一個場景,就是接受前端復(fù)雜的對象數(shù)組,或者多個數(shù)組。

這是我們可以用@RequestBody注解,來解析請求體中的數(shù)據(jù)。但是值得注意的是在GET請求是不能進(jìn)行該種方式的操作,因為GET請求沒有請求體。

發(fā)送的請求類型不能是GET請求,可以POST,PUT,DELETE等請求。

前端發(fā)送數(shù)據(jù)的時候,請求內(nèi)容格式必須設(shè)置為contentType:‘application/json;charset=utf-8’,默認(rèn)是``contentType:‘www-form-urlencoded’`

上傳的數(shù)據(jù)必須使用JSON.stringify(…)處理

后端接受參數(shù)前需要加注解@RequestBody,且每一個請求的參數(shù)里面最多只能有一個該注解

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java反射機(jī)制詳解_動力節(jié)點Java學(xué)院整理

    Java反射機(jī)制詳解_動力節(jié)點Java學(xué)院整理

    Java 反射機(jī)制。通俗來講呢,就是在運(yùn)行狀態(tài)中,我們可以根據(jù)“類的部分已經(jīng)的信息”來還原“類的全部的信息”。這篇文章給大家詳細(xì)介紹了java反射機(jī)制的知識,感興趣的朋友一起看看吧
    2017-06-06
  • java實現(xiàn)下載文件到默認(rèn)瀏覽器路徑

    java實現(xiàn)下載文件到默認(rèn)瀏覽器路徑

    這篇文章主要介紹了java實現(xiàn)下載文件到默認(rèn)瀏覽器路徑,具有很好的參考價值,希望對的大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • java?class?name實例深入精講

    java?class?name實例深入精講

    這篇文章主要為大家介紹了java?class?name實例深入精講,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-09-09
  • Java斗地主發(fā)牌課程設(shè)計

    Java斗地主發(fā)牌課程設(shè)計

    這篇文章主要為大家詳細(xì)介紹了Java斗地主發(fā)牌課程設(shè)計,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-12-12
  • java中this的用法示例(關(guān)鍵字this)

    java中this的用法示例(關(guān)鍵字this)

    這篇文章主要介紹了java中this的用法示例(關(guān)鍵字this),需要的朋友可以參考下
    2014-03-03
  • java生成excel報表文件示例

    java生成excel報表文件示例

    本篇文章主要介紹了java生成excel報表文件示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • maven工程如何讀取resource目錄下配置文件

    maven工程如何讀取resource目錄下配置文件

    這篇文章主要介紹了maven工程如何讀取,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • 淺談對象與Map相互轉(zhuǎn)化

    淺談對象與Map相互轉(zhuǎn)化

    這篇文章主要介紹了利用BeanMap進(jìn)行對象與Map的相互轉(zhuǎn)換,在文中列舉了完整代碼,需要的朋友可以參考下。
    2017-09-09
  • 了解java Struts攔截器的相關(guān)操作

    了解java Struts攔截器的相關(guān)操作

    Struts為我們實現(xiàn)了很多的功能,比如數(shù)據(jù)自動封裝,文件上傳功能阿。Struts為我們提供的這些功能都是通過攔截器完成的。下面我們來詳細(xì)了解一下吧
    2019-06-06
  • java 按行讀取文件并輸出到控制臺的方法

    java 按行讀取文件并輸出到控制臺的方法

    今天小編就為大家分享一篇java 按行讀取文件并輸出到控制臺的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07

最新評論