qq_1187001749
2016-03-18 02:26
采纳率: 100%
浏览 4.0k
已采纳

spring mvc 上传图片问题

后台:
@RequestMapping(method = RequestMethod.POST,params="picture")
public @ResponseBody String updateLoad(@RequestParam(value = "file") MultipartFile file) {
String filePath = request.getSession().getServletContext().getRealPath("/") + java.io.File.separator + AppConstants.PICTURE_PLACE;

    String name = FileUtil.saveFile(file, filePath);
    return name;
}

前台:

  <form id="imageUploadForm"  action='coupon?picture' method="post" enctype='multipart/form-data'>
                                <input type="file" name="file" class="default" />
                                <input type="submit" value="upload" />
            </form>    

报错:Required MultipartFile parameter 'file' is not present,怎么改能不报错,并且传过来的file 不为null

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • ai2018 2016-03-18 06:49
    已采纳

    图片说明
    图片说明
    图片说明

    已采纳该答案
    打赏 评论
  • 关外野店 2016-03-18 02:54

    你表单的action后面的问号什么意思啊

    打赏 评论
  • ai2018 2016-03-18 02:59

     public @ResponseBody String updateLoad(@RequestParam(value = "file") MultipartFile file)
    

    改为

     public @ResponseBody String updateLoad(@RequestParam MultipartFile file)
    
    打赏 评论
  • 花形翼 2016-03-18 09:54

    MultipartFile 需要转为File类型的啊,给段代码你参考哈
    @Controller

    public class UploadAction {

    @RequestMapping(value = "/upload.do")  
    public String upload(@RequestParam(value = "file", required = false) MultipartFile file, HttpServletRequest request, ModelMap model) {  
    
        System.out.println("开始");  
        String path = request.getSession().getServletContext().getRealPath("upload");  
        String fileName = file.getOriginalFilename();  
    

    // String fileName = new Date().getTime()+".jpg";

    System.out.println(path);

    File targetFile = new File(path, fileName);

    if(!targetFile.exists()){

    targetFile.mkdirs();

    }

        //保存  
        try {  
            file.transferTo(targetFile);  
        } catch (Exception e) {  
            e.printStackTrace();  
        }  
        model.addAttribute("fileUrl", request.getContextPath()+"/upload/"+fileName);  
    
        return "result";  
    }  
    

    }

    打赏 评论

相关推荐 更多相似问题