0

아래 코드는 배열의 첫 번째 파일을 경로 위치로 업로드하는 것입니다. 사람이 내 서버 측 컨트롤러에 어떤 문제가 있는지 확인할 수 있습니다AJAX 컨트롤러가 각 파일을 반복하지 않고 위치에 저장하지 않습니다. 첫 번째 파일 업로드 만 수행

private static String UPLOADED_FOLDER = "C://temp//"; 

@RequestMapping(value = { "/fileUpload" }, method = RequestMethod.POST) 
@ResponseBody 
public String uploadFile(@RequestParam("number") String number, @RequestParam("files[]") MultipartFile[] files, MultipartHttpServletRequest req, HttpServletResponse res) 
{  

    for (MultipartFile file : files) { 

    try { 
     File directory = new File(UPLOADED_FOLDER + number); 
     logger.info(directory.toString()); 
       if (! directory.exists()){ 
        directory.mkdir(); 
        logger.info("directory created"); 
        } 
      byte[] bytes = file.getBytes(); 
      logger.info(bytes.toString()); 
      Path path = Paths.get(UPLOADED_FOLDER + number + "//" + file.getOriginalFilename()); 
      logger.info(path.toString()); 
      Files.write(path, bytes); 
      logger.info("You have successfully uploaded '" + file.getOriginalFilename() + "'"); 
      return("File Uploaded"); 


    } catch (Exception e) { 
     res.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR); 
     logger.error("Failed to upload file '" + file.getOriginalFilename() + "'", e); 
     return("File Not Uploaded"); 
    } 
} 
    return "redirect:/fileUpload"; 
} 

} 

답변

2
return("File Uploaded"); 

이 루프에서 휴식을.

완전히 실행하려면 루프가 끝난 후 return을 입력해야합니다.