博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SpringMVC上传文件为空,servletFileUpload.parseRequest解析为空的问题
阅读量:3897 次
发布时间:2019-05-23

本文共 1137 字,大约阅读时间需要 3 分钟。

控制器中业务代码如下:

@RequestMapping(path = "/upload")    public String testupload(HttpServletRequest request)throws Exception  {
String path = request.getSession().getServletContext().getRealPath("/uploads/"); System.out.println(path); File file=new File(path); if(!file.exists()) file.mkdirs(); DiskFileItemFactory factory=new DiskFileItemFactory(); ServletFileUpload upload=new ServletFileUpload(factory); System.out.println(upload); //解析request 获取上传文件 List
fileItems = upload.parseRequest(request); System.out.println(fileItems); //判断是否是上传文件 for (FileItem fileItem : fileItems) {
if(fileItem.isFormField()){
//isFormField()判断是否普通表单类型 }else {
String name = fileItem.getName(); fileItem.write(new File(path,name)); } } return "success"; }

开始以为是文件路径的问题

在项目里面一直找不到生成的路径
后来根据调试发现默认是上传到了tomcat下的webapp中
但是文件一直是空
发现问题原因:
解析出的request对象一直是空的
解决方法:
去掉在spring配置中的这段配置:

然后发现文件就可以正常上传了

转载地址:http://whyen.baihongyu.com/

你可能感兴趣的文章
结构体最后定义一个char p[0];这样的成员有何意义(转)
查看>>
一步一学Linux与Windows 共享文件Samba (v0.2b)
查看>>
Linux 下忘记root密码怎么办
查看>>
Linux软件下载源码编程文章资料周立发--之调试
查看>>
GIT分支管理是一门艺术
查看>>
Cscope在emacs中的配置与使用
查看>>
emacs 2.4安装问题 ecb
查看>>
ecb里使用自定义快捷键切换窗口
查看>>
vim(gvim)支持对齐线
查看>>
CentOS编译安装Lighttpd1.4.28
查看>>
实践HTTP206状态:部分内容和范围请求
查看>>
【C++基础】拷贝构造函数的参数必须是引用类型
查看>>
【C++基础】virtual析构函数
查看>>
【Java基础】面向对象
查看>>
【Java.Web】web.xml详解
查看>>
J2EE的技术体系
查看>>
【Java.Web】Java Web应用程序的规范目录结构,*WEB组件的URL/入口*
查看>>
【基础篇】计算机网络
查看>>
OSI 7层详解
查看>>
【C++基础】重载overload、重写(覆盖)override、隐藏hide的区别
查看>>