需求:同时上传多个CSV文件
设计:SpringMVC多文件上传使用MultipartFile。
1.pom.xml加上文件上传依赖;pring配置文件中配置MultipartResover,用于处理表单中的file。具体代码如下:
pom.xml spring-mvc.xml2.jsp页面上建一个form表单,在表单下增加一个type为file的input框。form表单加上enctype属性,input框加上mulipart。
form表单3.点击上传,触发changeFileName事件,用于展示所选的文件名称列表。
注:curFiles定义的是全局变量,原来存放上传的文件。由于原始FileList对象不可更改,所以将其赋予curFiles提供接下来的修改,关键代码:Array.prototype.push.apply(curFiles, files);;curFiles获取到文件后,将$('#file').val('');置为空,用于触发changeFileName事件,不然删除文件后上传跟上次一样的文件就不走changeFileName方法。
4.点击确认导入,使用FormData进行Ajax请求上传文件到controller层的实现。
5.后台接收用MultipartFile[] file
总结:之前用ajaxFileUpload多文件上传,一直在改源码,但是坑太多,后来用了它的思想,总了最简单的方法。
作为一个刚干开发没多久的程序媛,以后要学习的地方还很多,请多赐教
网友评论