• SpringBoot实现多文件上传


        @Value("${youku1327.file.root.path}")
        private String fileRootPath;
    
        @PostMapping(value = "/file/upload", produces = MediaType.MULTIPART_FORM_DATA_VALUE)
        public String fileUpload(@RequestParam("files") MultipartFile[] files){
            String filePath = "";
            // 多文件上传
            for (MultipartFile file : files){
                // 上传简单文件名
                String originalFilename = file.getOriginalFilename();
                // 存储路径
                filePath = new StringBuilder(fileRootPath)
                        .append(System.currentTimeMillis())
                        .append(originalFilename)
                        .toString();
                try {
                    // 保存文件
                    file.transferTo(new File(filePath));
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return filePath;
        }

        @Value("${youku1327.file.root.path}")
        private String fileRootPath;
    
        @PostMapping(value = "/file/upload", headers = "content-type=multipart/form-data")
        public String fileUpload(@RequestParam("files") MultipartFile[] files){
            String filePath = "";
            // 多文件上传
            for (MultipartFile file : files){
                // 上传简单文件名
                String originalFilename = file.getOriginalFilename();
                // 存储路径
                filePath = new StringBuilder(fileRootPath)
                        .append(System.currentTimeMillis())
                        .append(originalFilename)
                        .toString();
                try {
                    // 保存文件
                    file.transferTo(new File(filePath));
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return filePath;
        }

        @Value("${youku1327.file.root.path}")
        private String fileRootPath;
    
        @PostMapping(value = "/file/upload", headers = "content-type=multipart/form-data", produces = MediaType.MULTIPART_FORM_DATA_VALUE)
        public String fileUpload(@RequestParam("files") MultipartFile[] files){
            String filePath = "";
            // 多文件上传
            for (MultipartFile file : files){
                // 上传简单文件名
                String originalFilename = file.getOriginalFilename();
                // 存储路径
                filePath = new StringBuilder(fileRootPath)
                        .append(System.currentTimeMillis())
                        .append(originalFilename)
                        .toString();
                try {
                    // 保存文件
                    file.transferTo(new File(filePath));
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return filePath;
        }

     

     

     最终用postman测试成功了。

    以下两个属性可以不需要:

    headers = "content-type=multipart/form-data", produces = MediaType.MULTIPART_FORM_DATA_VALUE

    作者:李永明

  • 相关阅读:
    Ubuntu18.04 安装Redis
    前端周刊,给前端同学准备的每周1小时阅读清单
    如何开发第三方小程序组件
    奋斗路上的安全边际,程序员保险配置指南
    为了知道儿子到底胖不胖,做了一个婴幼儿成长标准计算小程序
    Vue组织架构图组件
    最好用的jQuery-Ajax缓存插件
    Vue-Access-Control:前端用户权限控制解决方案
    RESTful学习及应用
    纯前端实现人脸识别-提取-合成
  • 原文地址:https://www.cnblogs.com/it-deepinmind/p/12598286.html
Copyright © 2020-2023  润新知