springmvc文件上传出现空指针问题

如下是springmvc中代码

@RequestMapping(value = "releasePro")
    public String releasePro(@RequestParam(value = "file",required=false) MultipartFile  file,Product product) throws IOException {
        System.out.println("pro::"+product.getCsid()+","+product.getPname());
        long  startTime=System.currentTimeMillis();
        System.out.println("fileName:"+file);
        System.out.println("fileName:"+file.getOriginalFilename());
        String path="D:/"+new Date().getTime()+file.getOriginalFilename();

        File newFile=new File(path);
        //通过CommonsMultipartFile的方法直接写文件(注意这个时候)
        file.transferTo(newFile);
        long  endTime=System.currentTimeMillis();
        System.out.println("方法二的运行时间:"+String.valueOf(endTime-startTime)+"ms");

        return "releaseProOK";
    }

下面是前端jsp

 

springmvc配置一下


    
        
        
        
    

最初写好出现的异常是HTTP Status 400 - Required CommonsMultipartFile[] parameter ‘XXX’ is not present

因为最初写成@RequestParam(value = “file”) 改成@RequestParam(value = “file”,required=false) 就好了,还有就是springmvc配置文件中的id一定要是multipartResolver不能改。
再有就是前端file文本域中的name也要与controller中注解保持一致@RequestParam(value = “file”,required=false)

最后就是空指针的问题,我的标签中写了两个name,而且两个name还不一样,导致空指针!

你可能感兴趣的:(springmvc文件上传出现空指针问题)