如何使用SpringMVC和Ajax上传PICTRUE,为什么我的程序中存在错误500



package com.restaurant.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import java.io.File;
import java.util.Map;
@Controller
@RequestMapping(value = "/restaurant")
public class HeadPorUploadPre {
    @ResponseBody
    @RequestMapping(value = "/uploadPreview",method = RequestMethod.POST)
    public Map<String,Object> uploadPre(@RequestBody MultipartFile up, HttpSession session, HttpServletRequest request){
        String path = session.getServletContext().getRealPath("/images/headPortrait/headPortraitPre");
        String fileName = up.getOriginalFilename();
        String extensionName = fileName
                .substring(fileName.lastIndexOf(".") + 1);
        String newFileName = String.valueOf(System.currentTimeMillis())
                + "." + extensionName;
        File targetFile = new File(path, newFileName);
        if(!targetFile.exists()){
            targetFile.mkdirs();
        }
        //save
        try {
            System.out.println("save");
            up.transferTo(targetFile);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }
}

$(document).ready(function () {
    $("#up").change(function () {
        $.ajaxFileUpload({
            type: 'post',
            url: '/restaurant/uploadPreview',
            fileElementId: 'up',
            dataType:"json",
            contentType:"application/json",
            async: true,
            success: function (data) {
                for(var i in data){
                    console.log(i);
                    console.log(data[i]);
                }
            },
            error: function (jqXHR) {
                console.log(jqXHR.status);
            }
        })
    })
})

我想上传pictrue检查其大小和类型,但是在控制器i Print file.getOriginalFilename()中,我什么都没有得到。我已经在ApplicationContext.xml.xml.so中添加了MultipartResolver。我的错误在哪里?<<<<<<<<<</p>

将内容类型更改为 "multipart/form-data"

相关内容

最新更新