SpringMVC中servletFileUpload.parseRequest(request)解析为空获取不到数据问题
下面是文件接收的方法,其中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)解析为空获取不到数据问题相关推荐
- SpringMVC上传文件解析request请求为空获取不到数据问题
2019独角兽企业重金招聘Python工程师标准>>> 一.原因分析 首先我们来看下Spring mvc 中文件上传的配置 <bean id="multipartRe ...
- java request上传文件_java使用ServletFileUpload上传文件,ServletFileUpload.parseRequest(request)报错。...
java使用ServletFileUpload上传文件,ServletFileUpload.parseRequest(request)报错.在我本地是好的,linux服务器上就报错.错误信息:org. ...
- vue中使用echarts实现动态数据绑定、获取后端接口数据
之前几篇echarts的文章是实现了静态的柱状图.折线图.饼状图.地图,在项目中我们肯定是需要获取后端接口,将后端返回的数据显示在图表上,所以这次就记录一下如何实现echarts的动态数据绑定. 简单 ...
- springMVC 返回类型选择 以及 SpringMVC中model,modelMap.request,session取值顺序
spring mvc处理方法支持如下的返回方式:ModelAndView, Model, ModelMap, Map,View, String, void.下面将对具体的一一进行说明: ModelAn ...
- spring学习之springMVC 返回类型选择 以及 SpringMVC中model,modelMap.request,session取值顺序...
spring mvc处理方法支持如下的返回方式:ModelAndView, Model, ModelMap, Map,View, String, void.下面将对具体的一一进行说明:ModelAnd ...
- SpringMVC中文件上传中 servletFileUpload解析为空
SpringMVC中servletFileUpload解析 记录下bug,在网上看了很多都没能,现在已解决,希望对同样遇到此问题的的人一个帮助. 以下代码中SpringMVC中servletFileU ...
- Request —— 获取请求行数据 获取请求头数据 获取请求体数据
1. request对象和response对象的原理 1. request和response对象是由服务器创建的.我们来使用它们 2. request对象是来获取请求消息,respon ...
- Android studio获取服务器端json数据并解析
最近在做Android的一个项目,涉及到Android studio与服务器端通信问题,在网上看了很多,找到了一些解决办法,这篇文章就简单介绍一下如何获取以及向服务器上传json数据. 在这个项目中, ...
- java代码中获取配置文件信息数据
获取properties文件信息 -- 从properties文件中获取信息 1 创建文件对象 private static Properties config = new Properties(); ...
最新文章
- Nessus Scan
- win7中cookie的保存位置
- 【Linux部署】Greenplum数据库6.13.0单机版 [CRITICAL]:-Error occurred: non-zero rc: 1(报错详情+问题处理:内存释放)
- 网络基础(二)及HTTP协议
- bat文件运行java的jar包不弹出dos窗口,开机自启jar包
- php mysql 编码转换_PHP编码转换函数应用
- mysql fulsh_mysql之备份和恢复(msyqldump、LVM、xtrabackup)
- [翻译] TLMotionEffect 重力感应
- 【紫书第九章】动态规划(DP)常见模型汇总与DP问题分析方法
- linux 二进制编辑工具,全网最全Linux的十大十进制编辑器,要接触Linux的你摆脱不了...
- 哈工大同义词词林扩展版-资源分享
- js案例练习:跟随鼠标移动的小天使
- deepin有线网卡无法连接网络
- 最好的60个国外壁纸网站
- 虎年,用Python画一个小老虎,祝大家新年虎虎生威,大吉大利
- 互联网移动支付存在的安全风险和对策
- VOS3000 IVR 语音业务的接入号码如何设置
- Hive使用必知必会系列
- npm install 报错 ERR! gyp ERR! cwd D:\workspace\node_modules\node-sass错误解决/npm ERR! gyp verb `which
- C#计算两个日期之间相差的天数
热门文章
- java jdbc 详解_JDBC详解
- swoole 启动流程_Swoole 启动一个服务,开启了哪些进程和线程?
- 去除残缺条目java_为什么说Java匿名内部类是残缺的闭包
- mysql过程分析_mysql事务执行过程分析
- Vue-CLI and Leaflet (9): 点聚合 Leaflet.markercluster
- [Springboot]SpringCache + Redis实现数据缓存
- iOS事件处理,看我就够了~ 1
- Mac OS绑定80端口
- Iphone 视图跳转方法总结
- 没有人愿意把自己放在被动的位置,一切皆是有原因的