1.起因
写了上传文件代码,用postman测试一下报400 Dad Request。
2.原因
看了下资料了解到使用SpringMVC上传文件需要在form表单中添加enctype="multipart/form-data",并且需要在springmvc的配置文件加入上传文件的bean代码,否则会报以上错误。
3.解决方法
form表单中添加enctype="multipart/form-data",并且在springmvc中添加如下代码:
<!-- 上传文件用 -->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!-- 上传文件大小上限,单位为字节(10MB) -->
<property name="maxUploadSize">
<value>10485760</value>
</property>
<!-- 请求的编码格式,必须和jSP的pageEncoding属性一致,以便正确读取表单的内容,默认为ISO-8859-1 -->
<property name="defaultEncoding">
<value>UTF-8</value>
</property>
</bean>
看到别人说 bean中的id="multipartResolver" 一定要加,否则也会报同样的错误。