springmvc上传文件明明定义了显示不存在

img

img

img


我明明定义了这个name,为什么会报这样的错,希望各位看一下我是哪里出错了

@RequestMapping后面加入 method=RequestMethod.POST

@RequestParam注解都去掉,
方法参数名 和前端表单标签的name值一一对应
file应该是对象MultipartFile,而不是集合List

这是因为你form设置enctype="multipart/form-data"转为2进制传输的问题,所以会接收不到参数,
可以参考下面这篇文章
multipart/form-data和application/x-www-form-urlencoded_PennJ的专栏-CSDN博客 FORM元素的enctype属性指定了表单数据向服务器提交时所采用的编码类型,默认的缺省值是“application/x-www-form-urlencoded”。然而,在向服务器发送大量的文本、包含非ASCII字符的文本或二进制数据时这种编码方式效率很低。在文件上载时,所使用的编码类型应当是“multipart/form-data”,它既可以发送文本数据,也支持二进制数据上载。 https://blog.csdn.net/jpiverson/article/details/12042205

1、jsp页面写了post请求,后台@RestMapper注解没有规定请求方式,默认是get
2、jsp页面参数你写的是file,后台参数你写的不是file,要对应否则不行的