簡體   English   中英

Spring MVC文件上傳

[英]Spring mvc file upload

我正在處理Spring MVC文件上傳。 在視圖中,我使用plupload多個文件上傳插件。 這是我的上傳操作:

 @RequestMapping(value = CrudURI.uploadDo, method = RequestMethod.POST, produces = "application/json")
public @ResponseBody String uploadDo(@RequestBody MultipartFile file, 
        @RequestParam String name, 
        @RequestParam(required=false, defaultValue="-1") int chunks,
        @RequestParam(required=false, defaultValue="-1") int chunk) {


    if (!file.isEmpty()) {
        try {
            byte[] bytes = file.getBytes();
            BufferedOutputStream stream = new BufferedOutputStream(new FileOutputStream(new File("/uploads/"+name)));
            stream.write(bytes);
            stream.close();
        } catch (Exception e) {

        }
    } else {

    }

    System.err.println(file.getOriginalFilename());
    return null;

}

此操作正常進行,沒有任何錯誤或異常,但未保存上傳的文件。 有什么問題? 謝謝

只需嘗試以下代碼:

File fileToSave=new File("/uploads/"+name);
file.transferTo(fileToSave);

還要確保您實際上在映射中獲取文件。

Darshan解決方案是正確的,您的原始代碼有一個問題,您正在讀取的文件為getBytes()而不使用緩沖區,而是使用緩沖區進行寫入。

我認為您的問題很可能是您試圖覆蓋已上傳的文件,至少根據您的輸出位置"/uploads/"+name 嘗試更改名稱,而不是添加空白的catch塊,而不是添加異常的日志,它將指出您的問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM