springMVC含文件上传调用ajax无法连接后台

时间:2023-03-10 01:12:22
springMVC含文件上传调用ajax无法连接后台
springMVC在使用ajax进行后台传值的时候发现找不到对应的requestMapping(""),无法进入后台,在多次试验后确定是
MultipartFile对象与ajax冲突;并且不报任何异常,直接调用ajax的失败属性方法处理;
代码如下:
·1 @RequestMapping("/addimage")
public String addimage(@RequestParam("image")MultipartFile file,HttpServletRequest request){ PersonMsgService.setEntityClass(Personalmsg.class);
Personalmsg bean=(Personalmsg) PersonMsgService.get(getInt(request, "personMsgID")); String fileName =getInt(request, "personMsgID")+".JPG";
System.out.println(fileName); String path = request.getSession().getServletContext().getRealPath("upload");
System.out.println(path);
File targetFile = new File(path,fileName);
if(!targetFile.exists()){
targetFile.mkdirs();
}
try {
file.transferTo(targetFile);
bean.setImage(path+"\\"+fileName);
System.out.println(bean);
PersonMsgService.saveOrUpdate(bean);
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return "redirect:/test/PersonMsg/tolist.spring";
}

如图
@RequestParam("image")MultipartFile file这个参数会导致按键按下ajax无法匹配对应的@RequestMapping("/addimage");
使用
MultipartRequest mrq=(MultipartRequest) request;对request转换也无法成功 当前我的解决方法是放弃使用ajax直接使用form表单提交,form中,设置method=post ,enctype=”multipart/form-data”