spring文件上传
## 1.文件配置
在pom.xml中的依赖配置
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>4.3.17.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/commons-fileupload/commons-fileupload -->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
spring-web的配置
<mvc:component-scan base-package="com.wm.controller"/>
<context:annotation-driven/>
<context:default-servlet-handler/>
<!--配置文件解析器并设置最大上传大小/-->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="maxUploadSize" value="10485760"/>
</bean>
java
/**
* Copyright (C), 2015-2018, XXX有限公司
* FileName: UploadController
* Author: 11493
* Date: 2018/6/8 16:31
* Description:
* History:
* <author> <time> <version> <desc>
* 作者姓名 修改时间 版本号 描述
*/
package com.wm.controller;
import com.sun.net.httpserver.HttpServer;
import org.apache.commons.io.IOUtils;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.commons.CommonsMultipartFile;
import sun.nio.ch.IOUtil;
import javax.servlet.http.HttpServletRequest;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.lang.reflect.Member;
import java.util.Date;
/**
* 〈手痒〉<br>
* 〈〉
*
* @author 11493
* @create 2018/6/8
* @since 1.0.0
*/
@Controller
public class UploadController {
@RequestMapping(value = "/upload", method = RequestMethod.POST)
public void upload(/*文件 和 集合 需要先声明*/@RequestParam("head") /*文件的类型*/CommonsMultipartFile head, HttpServletRequest request) throws IOException {
System.out.println(/*原始的文件名*/head.getOriginalFilename());
System.out.println(head.getSize());
String fileName = new Date().getTime()+".jpg";
String realPath = request.getServletContext().getRealPath("/img")+"/"+fileName;
System.out.println(realPath);
try {
IOUtils.copy(head.getInputStream(),new FileOutputStream(realPath));
} catch (IOException e) {
e.printStackTrace();
}
}
}