下面是文件接收的方法,其中List<FileItem> items为空,获取不到上传文件。

@RequestMapping(value = "/imagedetect", method = { RequestMethod.POST})
@ResponseBody
public Object imagedetect(ModelMap model, HttpServletResponse response) throws IOException {logger.info("检测任务开始====" + DateUtil.getCurrentTime());HttpServletRequest request=CommonUtil.getRequest();String access_token = request.getParameter("access_token");String url = request.getParameter("image");String tag = request.getParameter("tag");Object obj = new Object();//判断该请求是否有上传文件if(ServletFileUpload.isMultipartContent(request)) {FileItemFactory factory = new DiskFileItemFactory();ServletFileUpload upload = new ServletFileUpload(factory);try {List<FileItem> items = upload.parseRequest(request);for(FileItem item: items){}} catch (FileUploadException e) {e.printStackTrace();}}else{}
}

经过查找资料,分析后,发现在springmvc的配置文件中有这样一段代码:

1
2
3
4
5
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="defaultEncoding" value="UTF-8" />
<property name="maxUploadSize" value="104857600"/>
<property name="maxInMemorySize" value="4096"/>
</bean>

这两种分别是两种上传文件的设置方式,但是不能同时使用。切记。

把这个配置删除测试发现问题解决。

如果你想使用springmvc的文件上传方式,只需要后台接收的方法这么写:

1
2
3
4
5
6
7
8
@RequestMapping(value = "imagedetectufile", method = { RequestMethod.POST })
    @ResponseBody
    public Object detectPictureTask(
            @RequestParam(value = "image", required = false) MultipartFile file[],
            ModelMap model, HttpServletResponse response) throws IOException {
                //业务逻辑。。。
                //............      
}

亲测好使。

转载于:https://www.cnblogs.com/tanzq/p/8798710.html

SpringMVC中servletFileUpload.parseRequest(request)解析为空获取不到数据问题相关推荐

  1. SpringMVC上传文件解析request请求为空获取不到数据问题

    2019独角兽企业重金招聘Python工程师标准>>> 一.原因分析 首先我们来看下Spring mvc 中文件上传的配置 <bean id="multipartRe ...

  2. java request上传文件_java使用ServletFileUpload上传文件,ServletFileUpload.parseRequest(request)报错。...

    java使用ServletFileUpload上传文件,ServletFileUpload.parseRequest(request)报错.在我本地是好的,linux服务器上就报错.错误信息:org. ...

  3. vue中使用echarts实现动态数据绑定、获取后端接口数据

    之前几篇echarts的文章是实现了静态的柱状图.折线图.饼状图.地图,在项目中我们肯定是需要获取后端接口,将后端返回的数据显示在图表上,所以这次就记录一下如何实现echarts的动态数据绑定. 简单 ...

  4. springMVC 返回类型选择 以及 SpringMVC中model,modelMap.request,session取值顺序

    spring mvc处理方法支持如下的返回方式:ModelAndView, Model, ModelMap, Map,View, String, void.下面将对具体的一一进行说明: ModelAn ...

  5. spring学习之springMVC 返回类型选择 以及 SpringMVC中model,modelMap.request,session取值顺序...

    spring mvc处理方法支持如下的返回方式:ModelAndView, Model, ModelMap, Map,View, String, void.下面将对具体的一一进行说明:ModelAnd ...

  6. SpringMVC中文件上传中 servletFileUpload解析为空

    SpringMVC中servletFileUpload解析 记录下bug,在网上看了很多都没能,现在已解决,希望对同样遇到此问题的的人一个帮助. 以下代码中SpringMVC中servletFileU ...

  7. Request —— 获取请求行数据 获取请求头数据 获取请求体数据

    1. request对象和response对象的原理     1. request和response对象是由服务器创建的.我们来使用它们     2. request对象是来获取请求消息,respon ...

  8. Android studio获取服务器端json数据并解析

    最近在做Android的一个项目,涉及到Android studio与服务器端通信问题,在网上看了很多,找到了一些解决办法,这篇文章就简单介绍一下如何获取以及向服务器上传json数据. 在这个项目中, ...

  9. java代码中获取配置文件信息数据

    获取properties文件信息 -- 从properties文件中获取信息 1 创建文件对象 private static Properties config = new Properties(); ...

最新文章

  1. Nessus Scan
  2. win7中cookie的保存位置
  3. 【Linux部署】Greenplum数据库6.13.0单机版 [CRITICAL]:-Error occurred: non-zero rc: 1(报错详情+问题处理:内存释放)
  4. 网络基础(二)及HTTP协议
  5. bat文件运行java的jar包不弹出dos窗口,开机自启jar包
  6. php mysql 编码转换_PHP编码转换函数应用
  7. mysql fulsh_mysql之备份和恢复(msyqldump、LVM、xtrabackup)
  8. [翻译] TLMotionEffect 重力感应
  9. 【紫书第九章】动态规划(DP)常见模型汇总与DP问题分析方法
  10. linux 二进制编辑工具,全网最全Linux的十大十进制编辑器,要接触Linux的你摆脱不了...
  11. 哈工大同义词词林扩展版-资源分享
  12. js案例练习:跟随鼠标移动的小天使
  13. deepin有线网卡无法连接网络
  14. 最好的60个国外壁纸网站
  15. 虎年,用Python画一个小老虎,祝大家新年虎虎生威,大吉大利
  16. 互联网移动支付存在的安全风险和对策
  17. VOS3000 IVR 语音业务的接入号码如何设置
  18. Hive使用必知必会系列
  19. npm install 报错 ERR! gyp ERR! cwd D:\workspace\node_modules\node-sass错误解决/npm ERR! gyp verb `which
  20. C#计算两个日期之间相差的天数

热门文章

  1. java jdbc 详解_JDBC详解
  2. swoole 启动流程_Swoole 启动一个服务,开启了哪些进程和线程?
  3. 去除残缺条目java_为什么说Java匿名内部类是残缺的闭包
  4. mysql过程分析_mysql事务执行过程分析
  5. Vue-CLI and Leaflet (9): 点聚合 Leaflet.markercluster
  6. [Springboot]SpringCache + Redis实现数据缓存
  7. iOS事件处理,看我就够了~ 1
  8. Mac OS绑定80端口
  9. Iphone 视图跳转方法总结
  10. 没有人愿意把自己放在被动的位置,一切皆是有原因的