使用Spring MVC将文件上载到服务器目录

我正在尝试从客户端计算机上传文件到服务器目录。 我使用以下代码:

FileUpload.jsp

Upload a File

在我的控制器中:

 @RequestMapping("/upload.action") public String upload(@ModelAttribute("fileUpload") FileUpload fileUpload,HttpServletResponse response,Model model) { CommonsMultipartFile multipartFile = fileUpload.getFileData(); String orginalName = multipartFile.getOriginalFilename(); String filePath = "/my_uploads/"+orginalName; File destination = new File(filePath); String status ="success"; try { multipartFile.transferTo(destination); } catch (IllegalStateException e) { // TODO Auto-generated catch block e.printStackTrace(); status="failure"; } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); status="iofailure"; } model.addAttribute("status", status); return "home"; } 

FileUpload.java:

 { private CommonsMultipartFile fileData; .... } 

String orginalName = multipartFile.getOriginalFilename();行中抛出NullPointerException String orginalName = multipartFile.getOriginalFilename(); ..我做错了什么?

尝试在您的requesthandler中添加MultipartFile作为参数。

 @RequestMapping("/upload.action") public String upload(@RequestParam(value = "file") MultipartFile file, HttpServletResponse response,Model model) { //Controller logic... } 

这将要求您在调度程序的配置中注册一个新bean。

    
 @RequestMapping("/upload.action") public String upload(@RequestParam("fileData") MultipartFile file, HttpServletResponse response,Model model) { //Controller logic... } 

您在请求处理程序方法的参数中应该具有相同的名称,无论您在FileUpload Pojo中为multipartFile(“fileData”)提供什么,它都应该在参数中

谢谢,