使用SpringMVC 的MultipartFile文件上传时参数获取的一个坑

最近在做文件上传,看到SPRINGMVC以做了一些封装,就打算以使用它来做上传.但马我就遇到了接收不到文件参数的问题.都是按照网上的说法,在控制器那里按名字注入.即:

@ResponseBody
@RequestMapping(value = "/recive")
public String recive(@RequestParam(value = "files")MultipartFile file{

...
}

页面代码:

<li class="uk-width-1-1">
 <a class="uk-form-file">选择文件<input id="upload-select" name="files" type="file"></a>
 <div id="progressbar"></div>
</li>

由于前端使用了UIKIT的上传组件,所以没使用form形式上传.为了进一步确定参数名不一致问题我看了页面控制台和JAVA控制台,分别如下:

01930053d01f60435fe2751b201b98566f3.jpg

控制台日志:

[8080-33] DEBUG 在 [o.s.w.m.c.CommonsFileUploadSupport] 的第 271 行 - Found multipart file [files[]] of size 7137 bytes with original filename [bcgs.png], stored in memory

这么看来,很明显后台是收到了文件,但控制器方法就是按不到参数.

最终尝试性的修改了一下,问题得到解决.关于在于:

@ResponseBody
@RequestMapping(value = "/recive")
public String recive(@RequestParam(value = "files[]")MultipartFile file{

...
}

即,@RequestParam(value = "files[]")严格匹配的,当中的"[]"也是不可省的.在此做以记录,以备后查.

转载于:https://my.oschina.net/6955825/blog/1831250

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值