簡體   English   中英

如何使用ajax文件上傳和spring mvc上傳文件?

[英]How to upload file using ajax file upload and spring mvc?

我有一個jsp文件,我使用ajax文件上傳方法上傳文件。 對於文件的后端處理我在春天制作了一個控制器。 但我無法找到在這種情況下如何處理彈簧2.5中的文件? 我的代碼是 -

JSP文件

<input type="file" name="file" />
<script type="text/javascript">
        function saveMedia() {
            var formData = new FormData();
            formData.append('file', $('input[type=file]')[0].files[0]);
            console.log("form data " + formData);
            $.ajax({
                url : 'ajaxSaveMedia.do',
                data : formData,
                processData : false,
                contentType : false,
                type : 'POST',
                success : function(data) {
                    alert(data);
                },
                error : function(err) {
                    alert(err);
                }
            });
        }
    </script>

主要有兩個步驟:

1)將一個多部分解析器的實例添加到Spring上下文中

<bean id="multipartResolver"
        class="org.springframework.web.multipart.commons.CommonsMultipartResolver" />

2)添加一個處理程序方法

// I assume that your controller is annotated with /ajaxSaveMedia.do
@RequestMapping(method = RequestMethod.POST)
public @ResponseBody String doUpload(@RequestParam("file") MultipartFile multipartFile) {                 
    return "Uploaded: " + multipartFile.getSize() + " bytes";
}

要從org.springframework.web.multipart.MultipartFile獲取java.io.File的實例:

File file = new File("my-file.txt");
multipartFile.transferTo(file);

暫無
暫無

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

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