本文共 3334 字,大约阅读时间需要 11 分钟。
org.springframework.boot spring-boot-starter-web commons-io commons-io 2.4 commons-fileupload commons-fileupload 1.3.3
package cn.hadron;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.boot.web.servlet.MultipartConfigFactory;import org.springframework.context.annotation.Bean;import javax.servlet.MultipartConfigElement;@SpringBootApplicationpublic class DbApplication { public static void main(String[] args) { SpringApplication.run(DbApplication.class, args); } @Bean public MultipartConfigElement multipartConfigElement() { MultipartConfigFactory factory = new MultipartConfigFactory(); //单个文件最大 KB,MB factory.setMaxFileSize("100MB"); /// 设置总上传数据总大小 factory.setMaxRequestSize("500MB"); return factory.createMultipartConfig(); }}
package cn.hadron.controller;importcn.hadron.db.util.FileUtil;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.ModelAttribute;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.MultipartFile;import java.io.File;import java.io.IOException;@Controller@RequestMapping(value = "/file")public class FileController { @RequestMapping(value="/upload.do",method= RequestMethod.POST) public String upload(@RequestParam("dir") MultipartFile[] dir) { System.out.println("上传文件夹..."); File file; String fileName=""; String filePath=""; for (MultipartFile f : dir) { fileName=f.getOriginalFilename(); String type=f.getContentType(); System.out.println("\n"+fileName+" ,"+type); filePath="D:\\upload\\"+fileName.substring(0,fileName.lastIndexOf("/")); if(!FileUtil.isDir(filePath)){ FileUtil.makeDirs(filePath); } file = new File("D:\\upload\\" + fileName); try { file.createNewFile(); //将上传文件保存到一个目标文件中 f.transferTo(file); } catch (IOException e) { e.printStackTrace(); } } return "filelist"; }}
package cn.hadron.db.util;import java.io.*;import java.util.ArrayList;import java.util.List;import org.apache.commons.io.FileUtils;/** * 文件操作工具类 * * @author cyq * */public class FileUtil { public static boolean isFile(String filepath) { File f = new File(filepath); return f.exists() && f.isFile(); } public static boolean isDir(String dirPath) { File f = new File(dirPath); return f.exists() && f.isDirectory(); } /** * 创建多级目录 * @param path */ public static void makeDirs(String path) { File file = new File(path); // 如果文件夹不存在则创建 if (!file.exists() && !file.isDirectory()) { file.mkdirs(); }else { System.out.println("创建目录失败:"+path); } }}
Title
转载地址:http://grvab.baihongyu.com/