后台用JSONObject接收前端傳過來的字符串數組,並轉成集合(JSONObject---JSONArray---List)


前端傳遞數據:

handleSubmit() {this.dialogVisible = false;
        const param = { 'bidSampleImgList': this.fileList, 'id': this.keyId };
        this.update(param)
      },

前端傳遞字符串到后台,后台通過JSONObject進行接收,注意不是JsonObject.

將字符串數組轉換成List集合分兩步

通過JSONObject的getJSONArray方法將字符串數組轉換成JSONArray,再用JSONArray的toJavaList方法的將JSONArray轉換成List集合

注意:將JSONArray轉化成List集合時,toJavaList方法的參數是實體類的class類型,而不是List<AttachFile>

@PostMapping(value = "edit")
    public Result editIn(@RequestBody JSONObject jsonObject){
        int id = jsonObject.getIntValue("id");
        JSONArray jsonArray = jsonObject.getJSONArray("bidSampleImgList");
        List<AttachFile> attachFiles = jsonArray.toJavaList(AttachFile.class);
        In in = new In();
        in.setBidSampleImgList(attachFiles);
        in.setId(id);
        return inService.editIn(in);
    }

 總結:如果前端要傳遞一個List到后台,將List放在JSON中傳遞,后台用JSONObject接收,這是基本的思路


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM