springmvc 多文件上传接收方式

首先配置spring-mvc.xml

<bean id="multipartResolver"    
	   class="org.springframework.web.multipart.commons.CommonsMultipartResolver">    
	   <property name="defaultEncoding">    
	       <value>UTF-8</value><!-- 编码 -->
	   </property>    
	   <property name="maxUploadSize">    
	       <value>5242880</value><!-- 上传文件大小限制为5M,5*1024*1024 -->    
	    </property>    
	    <property name="maxInMemorySize">    
	        <value>4096</value><!-- 设置在文件上传时允许写到内存中的最大值 -->
	    </property>    
	</bean>

  1. @RequestParam("file")MultipartFile[] files  方式

    这种方式就是直接能拿到文件,指定接收file字段文件请求

  2. HttpServletRequest request  方式

//转化成MultipartHttpServletRequest 
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
//获取map,遍历map 取 value = MultipartFile
//这种方式不需要固定文件请求字段,随便写什么都可以,只要不重复。file1,file2,upload1,upload2都可以
Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
//这种方式和MultipartFile[]一样,指定接收file字段文件请求
List<MultipartFile> files = multipartRequest.getFiles("file");

遍历后拿到MultipartFile file就简单了

//获取文件名
String name = file.getOriginalFilename();
//保存
file.transferTo(new File("保存地址"));


你可能感兴趣的:(springMVC,MultipartFile)