-
导入相关依赖
<!-- https://mvnrepository.com/artifact/commons-fileupload/commons-fileupload --> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.4</version> </dependency> <!-- https://mvnrepository.com/artifact/commons-io/commons-io --> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.8.0</version> </dependency>
-
在spring-mvc.xml配置文件中配置文件解析器
<!-- 配置文件解析器--> <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <!-- 设置文件上传编码格式--> <property name="defaultEncoding" value="UTF-8"/> <!-- 设置文件上传最大值--> <property name="maxUploadSize" value="10485760"/> <!-- 延迟文件解析,便于在文件上传请求中catch异常--> <property name="resolveLazily" value="true"/> </bean>
-
controller层
public String upload(MultipartFile upload, HttpSession session){ //获取发布项目路径下保存图片的路径 String path = session.getServletContext().getRealPath("/项目保存图片的文件夹"); //定义图片名称,定义为随机字符串加上文件原始名称 String filename = UUID.randomUUID()+"-"+upload.getOriginalFilename(); //定义本地项目路径 String localpath = "D:\\项目\\webapp\\保存图片的文件夹"; try { //将接收的文件保存到发布的项目路径下 upload.transferTo(new File(path, filename)); //保存到发布项目路径下的文件保存到本地路径 FileUtils.copyFile(new File(path, filename), new File(localpath, filename)); } catch (IOException e) { e.printStackTrace(); } }