无法使用springboot将映像保存到linux中的磁盘

时间:2019-12-30 10:15:35

标签: java spring-boot

我正在尝试使用spring boot和angular将图像保存到磁盘,但是没有 以下代码中引发了异常,也没有任何错误,但是我看不到所需文件夹中的图像

@RestController
@CrossOrigin(origins = "http://localhost:4200")
public class ImageController {
        @RequestMapping(value = "/postImages", method = RequestMethod.POST, consumes = 
                        MediaType.MULTIPART_FORM_DATA_VALUE )
        public ResponseEntity<Void> uploadPolicyDocument(@RequestParam("image") 
                                                          List<MultipartFile> multipartFile)
       {
        String OUT_PATH = "home\\krishnachaitanya\\Pictures\\testing\\";

    try {
        for(MultipartFile mf: multipartFile)
        {
            byte[] bytes = mf.getBytes();
            Path path = Paths.get(OUT_PATH+ mf.getOriginalFilename());
            Files.write(path, bytes);
        }

    } catch (IOException e) {
        return new ResponseEntity<>(HttpStatus.BAD_REQUEST);
    }
    return ResponseEntity.ok().build();
  }

2 个答案:

答案 0 :(得分:1)

实际上,我认为文件已成功写入,但未达到您期望的位置。 '\'不是Linux上的路径分隔符,您指定的路径是相对的,因此该文件写入应用程序工作目录中。该文件名为:home\krishnachaitanya\Pictures\testing\oryginalFileName

OUT_PATH更改为“ / home / krishnachaitanya / Pictures / testing /”

答案 1 :(得分:0)

对于Linux系统,OUT_PATH看起来非常错误。您是否尝试使用“ /”代替“ \\”