千鹤纸 發表於 2026-1-9 09:23:06

SpringBoot同时接收文件以及json参数实现方式

<div id="navCategory"><h5 class="catalogue">目录</h5><ul class="first_class_ul"><li>前端传参</li><li>后端接收</li><li>注意</li><li>​​​​​​​总结</li></ul></div><p class="maodian"></p><h2>前端传参</h2>
<div class="jb51code"><pre class="brush:java;">let upData = new FormData();
// 将文件列表赋值给files参数
this.files.forEach(function (file) {
upData.append("files", file);
});
this.firmwareSaveDto = this.formData;
let commodityDto = JSON.stringify(this.firmwareSaveDto);
// 将json对象赋值给saveDto参数
upData.append(
"saveDto",
new Blob(, { type: "application/json" })
);
// 发送请求,注意请求头信息
axios.post('/v1/test/upload_files', upData, {
    headers: {
      'Content-Type': 'multipart/form-data'
    }
})

</pre></div>
<p class="maodian"></p><h2>后端接收</h2>
<div class="jb51code"><pre class="brush:java;">/**
* 上传文件
* @param files
* @param saveDto
* @return
*/
@PostMapping(value = "/upload_files",name = "上传文件")
public ExecuteResult uploadFiles(
                                                @RequestPart("files") MultipartFile[] files,
                        @RequestPart("saveDto") @Valid SaveDtosaveDto){
        // 逻辑代码。。。。。。
}
</pre></div>
<p class="maodian"></p><h2>注意</h2>
<ol><li>后端【同时接收文件以及json参数】时使用<code>@RequestPart</code>注解。</li><li>后端与前段要约定好文件与json的对应参数名<code>files、saveDto</code>。</li><li>前端要注意&nbsp;<strong>请求头信息</strong></li></ol>
<p class="maodian"></p><h2>​​​​​​​总结</h2>
<p>以上为个人经验,希望能给大家一个参考,也希望大家多多支持琼殿技术社区。</p>
                           
                            <div class="art_xg">
                              <b>您可能感兴趣的文章:</b><ul><li>Springboot接收文件报错Required&nbsp;request&nbsp;part‘file‘is&nbsp;not&nbsp;present问题分析及解决</li><li>在springboot项目中同时接收文件和多个参数的方法总结</li><li>Springboot接收文件与发送文件实例教程</li><li>SpringBoot中实现接收文件和对象</li></ul>
                            </div>

                        </div>
                        <!--endmain-->
頁: [1]
查看完整版本: SpringBoot同时接收文件以及json参数实现方式