第一次写app接口,使用的web框架是spring mvc,在接收手机端发送过来的图片的时候,服务段报错,匹配不上文件类型,以至于spring 无法初始化文件对象,最后发现是因为spring mvc的参数注解没有加!
示例如下:
用来上传图片的form表单:
<form action="../../index/upload" method="post" enctype="multipart/form-data">
<input type="file" name="file"/>
<input type="submit" value="提交"/>
</form>
后台action,上传方法:
@RequestMapping(value="/pic/upload",method=RequestMethod.POST )
@ResponseBody
public PhoneResult pictureUpload( HttpServletRequest request,@RequestParam MultipartFile uploadFile,String code,String name) {
String dirpath = request.getSession().getServletContext().getRealPath("phone"); //获取tomcat 上下文环境路径
String fileName = uploadFile.getOriginalFilename(); //获取原始文件名
if(StringUtils.isBlank(code)){
return PhoneResult.build(400, "code is null !");
}
System.out.println(dirpath);
PhoneResult result = service.uploadPicture(dirpath,uploadFile,code);
return result;
}