springmvc文件上传,出现400 的错误问题
遇见的原因是公司系统上的图片上传忽然不好使了,报错400。单独针对这个模块调了好长时间都没解决,后来才发现前几天做过一个excel上传导入的功能。。。
使用SptingMVC3.1.3 对于文件上传提交的表单我们都会写:enctype="multipart/form-data" 的一个设置, 那么值得注意的问题出现了, 对于表单post提交的数据无法绑定到后台的参数中, 紧接着服务器会向浏览器客户端抛HTTP STATUS 400 的错误。
controller.java
jsp:
form 标签中加入 enctype="multipart/form-data" 表示该表单要提交文件。
<form action="upload/file-upload.do" method="post" enctype="multipart/form-data"> <input type="file" name="file"> <input type="submit" value="提交"> </form>
其中List<FileItem> filelist为空,获取不到上传文件。
经过查找,发现excel导入的时候,加入了这样一段配置。
Spring-servlet.xml
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="maxUploadSize" value="104857600" />
<property name="maxInMemorySize" value="4096" />
<property name="defaultEncoding" value="UTF-8"></property>
</bean>
这两种分别是两种上传文件的设置方式,但是不能同时使用。
第一种方式:将配置文件注释掉。
第二种方式:将controller接收参数的方式修改下。
posted on 2018-07-31 10:00 qiujiababy 阅读(4605) 评论(0) 编辑 收藏 举报