APP端传输图片到服务端报multipartfile为空的错误的解决方法_上传图片multipartfile为空_安卓鱼1111的博客-程序员秘密

技术标签: java  错误排查  

1.APP端使用Retrofit传输图片

 RequestBody requestFile =
                RequestBody.create(MediaType.parse("multipart/form-data"), file);
        MultipartBody.Part filePart = MultipartBody.Part.createFormData("pictures",
                file.getName(), requestFile);

2.服务端使用SSM框架接收图片,然后将图片传输到nginx服务器

代码:

@RequestMapping(value ={"/uploadpic"},method = RequestMethod.POST)
    @ResponseBody
    public BaseResp<String> uploadPicture(MultipartFile uploadFile){

        BaseResp resp=pictureService.uploadPictrue(uploadFile);

        return resp;
    }

图片上传解析器已经配置

 <!-- 定义文件上传解析器 -->
    <bean id="multipartResolver"
          class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
        <!-- 设定默认编码 -->
        <property name="defaultEncoding" value="UTF-8"></property>
        <!-- 设定文件上传的最大值5MB,5*1024*1024 -->
        <property name="maxUploadSize" value="5242880"></property>
    </bean>

3.然后报multipartfile的空指针异常

后面原来是把app端上传的图片参数,上图:pictures写上,错误消失

@RequestMapping(value ={"/uploadpic"},method = RequestMethod.POST)
    @ResponseBody
    public BaseResp<String> uploadPicture(@RequestParam(value="pictures",required=false)MultipartFile uploadFile){

        BaseResp resp=pictureService.uploadPictrue(uploadFile);

        return resp;
    }

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_38750095/article/details/94562339

智能推荐

将前端技术栈移植到掌上游戏机_zz_jesse的博客-程序员秘密

https://juejin.im/post/5df89b96518825125b21d0f6前端工程师,我们编写的代码只能活在浏览器、小程序或者 Node 进程里,这似乎已经成为了一种...

kubernetes垃圾回收器GarbageCollector Controller源码分析(一)_进击云原生的博客-程序员秘密

kubernetes版本:1.13.2需要注意,想要启用该GC,需要在kube-apiserver和kube-controller-manager的启动参数中都设置–enable-garbage-collec为true。func main() { rand.Seed(time.Now().UnixNano()) //加载controller manager默认启动参数,创建* cobr...

文件描述符与进程描述符_进程描述符 占用文件描述符_u012566181的博客-程序员秘密

Linux系统可以看成是一个由文件组成的系统,在linux系统中,基本上所有的设备,硬件,资源都被看成一个文件,比如,在/dev下面我们可以看到我们的硬盘sda1(我的机器是安装的SCIS硬盘的虚拟机),终端设备ttyn,在/proc目录下面我们可以看到当前的内存信息,cat/proc/meminfo,可以查看CPU的信息: cat /proc/cpuinfo, 这些文件都是被linux系统抽象成

STM32F0 USART唤醒STOP模式_Triv的博客-程序员秘密

STM32F0系列通过USART唤醒STOP模式,不使用系统自带的唤醒方式。

JSP隐含对象_A09276的博客-程序员秘密

1、out隐含对象 (输出对象) 直接用于在JSP页面输出内容 javax.servlet.jsp.JspWriter(抽象类) 继承自java.io.Writer JSP中的out对象最终被转化成servlet中的JspWriter对象 2、request内置对象 (请求对象) 用于获取Http请求相关信息,比如查询字符串,表单数据 javax.servlet.http.HttpServlet

springMVC使用@ControllerAdvice实现异常处理_大大头_1991的博客-程序员秘密

控制器异常处理:[code=&quot;java&quot;]@ResponseStatus(value=HttpStatus.NOT_FOUND)public class StaffNotFoundException extends Exception {}[/code]自定义StaffNotFoundException异常类:员工信息没有找到异常。@ResponseStat...

随便推点

JS--微信浏览器复制到剪贴板实现_Surenon的博客-程序员秘密

由于太忙很久没写博客了,如有错误遗漏,请指出,感谢!首先这里要注意,是微信浏览器下的解决方案,其他浏览器请自行测试。先说复制到剪贴板主要有什么使用场景:优惠券优惠码,需要用户复制淘宝商品,需要复制淘口令由于淘宝链接无法在微信中打开,所以淘宝开发了淘口令方便物质传播,而导购网站在微信推广的时候也是生成口令,用户只需要复制口令,打开手机淘宝,即可看到对应的商品:...

web安全之Openfire的脚本上传缺陷分析_si1ence_whitehat的博客-程序员秘密

0x0 背景一次偶然的机会发现某台Web服务器被黑了之后被植入了挖矿病毒,然后忙活了好久清理完病毒之后就开始思考思考到底是怎么被黑的,俗话说的好死要死得明白。服务器本身只开发了外网的web端口,然后初步怀疑是从web服务端进来的于是先用D盾查杀一下果不出所料查杀出一个webshell,路径却在Openfire目录下以前没有接触过这个玩意遂研究之。0x1 功能介绍Openfire 是基于XMPP 协议的IM 的服务器端的一个实现,虽然当两个用户连接后,可以通过点...

解决Docker build时 Sending build context to Docker daemon 过大的问题_chushiyunen的博客-程序员秘密

执行 docker build -t myeureka . 命令后,日志如下:[[email protected] ~]# docker build -t myeureka .Sending build context to Docker daemon 13.99 GBStep 1/10 : FROM centos:7明明我的docker文件很简单,为什么会这么大...

VMware Workstation不可恢复错误:(vcpu-0)_萌芽dream的博客-程序员秘密

进气自己安装VMware出现了VMware Workstation不可恢复错误:(vcpu-0)。如图:这是因为主板cpu“虚拟化”没有打开。解决办法:通过打开BIOS主板打开虚拟化。Intel的虚拟化技术称为Intel-VT(Virtual Technology),而AMD的叫做AMD-V(AMD Virtualization,AMD主板的BIOS中称为SVM)。百度经验–虚拟化打开方式...

ProjectServer2010+SharepointServer2010 错误_X_FOCUS的博客-程序员秘密

ProjectServer2010+SharepointServer2010 错误环境为:win2008R2+sqlserver2008R2+project server2010+sharepoint server2010按照文档操作,当创建PWA时 日志报如下错误,如果一切正常,会看到状态为“已提供”设置“PWA”: 未能设置数据库。出现异常: Failed to grant log

在导入sklearn包是报错_cannot import name 'dicvectorizer' from 'sklearn.f_公众号【五元杂货铺】的博客-程序员秘密

相信大家经常会遇到这种情况,在导入sklearn包时或者其他包时报错ImportError: cannot import name __check_build此种情况的原因一般为包之间不兼容的问题导致的相信大家在安装 numpy、pandas、matplotlib、scipy、scikit_learn等包是直接利用命令行的方式安装的例如:pip install 包名 此种方式安装虽

推荐文章

热门文章

相关标签