CommonsMultipartFile shopImg = null;//接收图片的对象
CommonsMultipartResolver commonsMultipartResolver = new CommonsMultipartResolver(
request.getSession().getServletContext()
);//文件上传解析器,解析request里面的文件信息:通过本次会话当中的上下文去获取相关文件上传的内容
if (commonsMultipartResolver.isMultipart(request)) {//判断request里面是否有上传的文件流
MultipartHttpServletRequest multipartHttpServletRequest = (MultipartHttpServletRequest) request;
shopImg = (CommonsMultipartFile) multipartHttpServletRequest.getFile("shopImg");//获取图片
} else {
modelMap.put("success", false);
modelMap.put("errMsg", "上传图片不能为空");
return modelMap;
}![图片描述](http://img1.sycdn.imooc.com/szimg/5d3690ad09de840209840562.jpg)
![图片描述](http://img1.sycdn.imooc.com//szimg/5d36c11709dca14507930248.jpg)
老师前台shopImg有数据,我后台用request.getParameter(shopImg)取值为null,
request.getParameter(verifyCodeActual)取验证码的有值,这个问题弄了一个晚上和一个上午没弄明白,配置文件我是用@Configuration在里面注册bean写的
@Bean(value = "multipartResolver")
public MultipartResolver multipartResolver(){
CommonsMultipartResolver resolver = new CommonsMultipartResolver();
resolver.setDefaultEncoding("UTF-8");
//resolveLazily属性启用是为了推迟文件解析,以在在UploadAction中捕获文件大小异常
resolver.setResolveLazily(true);
resolver.setMaxInMemorySize(40960);
//上传文件大小 50M 50*1024*1024
resolver.setMaxUploadSize(50*1024*1024);
return resolver;
}
SSM商铺V1.0,解决毕设痛点;SpringBoot商铺V2.0,满足工作刚需
了解课程