由于公司專案前后端互動介面引數傳遞方式全部是用form-data方式提交,在開發程序中遇到一個需求,就是通過從前端將物件陣列以form-data方式提交到后臺,然后后臺在把它序列化成java物件,
在網路上找了很多種解決方案都沒有解決問題
參考鏈接-4種方法讓SpringMVC接收多個物件
參考鏈接-formdata傳遞引數_使用FormData格式在前后端傳遞資料
參考鏈接-傳遞Json字串
最后我用的是前端將物件陣列轉換成一個Json字串,然后Java后臺使用String型別接受 ,再然后就是將Json字串轉換為Java物件了,步驟很簡單
第一步
前端需要做的事情
var arrList =[{"imageJson":"sdfdsfds","aliyunVODId":"567576","vodUrl":"jjjjg"},{"imageJson":"sdfdsfds","aliyunVODId":"567576","vodUrl":"jjjjg"}]
var parList= JSON.stringify(arrList );
第二步
控制層
@ResponseBody
@RequestMapping("/json-list")
public String publishedWorks( String vodDtoList ) {
List<VodDto> list = JSONObject.parseArray(vodDtoList, VodDto.class);
for (VodDto vodDto : list) {
System.out.println(vodDto.toString());
}
}
物體類
@Data
public class VodDto {
//視頻封面圖片
private Object imageJson;
//視頻編號
private Object aliyunVODId;
//視頻播放地址
private Object vodUrl;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/249561.html
標籤:其他
