【问题标题】:How to upload MultipartFile from external link?如何从外部链接上传 MultipartFile?
【发布时间】:2015-11-16 14:34:33
【问题描述】:

我已经有了接受MultipartFile的控制器

@RequestMapping(value = "/uploadImage" )
@ResponseBody
public ResponseEntity<String> handleFileUpload(@Validated MultipartFileWrapper file,
        BindingResult result, Principal principal)

出现了新的要求。我们需要从外部资源(例如保管箱)加载文件并重新保存到本地 mashine。我知道加载链接是先决条件。

我想重用第一个控制器。因此我的目标 - 使用 MultipartFile 类型的外部链接下载文件并将其传递给现有控制器。

spring 建议如何解决我的问题?

附言

MultipartFileWrapper 只是 MultipartFile 下的包装器

【问题讨论】:

    标签: java spring-mvc file-upload multipartform-data multipart


    【解决方案1】:

    我加了

    <!-- Integration-->
    <dependency>
        <groupId>org.springframework.integration</groupId>
        <artifactId>spring-integration-http</artifactId>
        <version>${spring.version}</version>
    </dependency>
    

    和下面的代码(我减少了异常处理)

        InputStream inputStream =   new URL(url).openStream();  
        File file = File.createTempFile("tmp", ".txt", new File(System.getProperty("user.dir")));
        byte[] binary = IOUtils.toByteArray(inputStream);
        FileUtils.writeByteArrayToFile(file, binary);
        UploadedMultipartFile multipartFile = new UploadedMultipartFile(file, file.length(), "jpg",
                    "formParameter", fileName);
        MultipartFileWrapper multipartFileWrapper = new MultipartFileWrapper();
        multipartFileWrapper.setMultipartFile(multipartFile);
        redirectAttributes.addFlashAttribute(multipartFileWrapper);
        return "redirect:/member/uploadImage";
    

    【讨论】:

      猜你喜欢
      • 2015-09-04
      • 1970-01-01
      • 2019-04-08
      • 1970-01-01
      • 1970-01-01
      • 2016-02-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多