如何HttpServletRequest文件对象并储存


Posted in Javascript onAugust 14, 2020

核心代码

由于HttpServletRequest不能直接取出文件数据,所以将其强制转换为MultipartHttpServletRequest

MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
List<MultipartFile> files = multipartRequest.getFiles("files");

POST

/*提交表单*/
function myupload() {
  $.ajax({
    url:"/exUploadController.do?uploadTest",
    type : "POST",
    async: false,
    cache: false, //此处设置false
    contentType: false,//必须设置false ,formupload1表单中必须设置enctype="multipart/form-data"
    processData: false, //必须设置fals
    data :new FormData(document.getElementById("myForm")),
    success:function (data) {
      alert(data);
    },
    error:function (XMLHttpRequest, textStatus, errorThrown) {
      console.log(XMLHttpRequest);
      console.log(textStatus);
      console.log(errorThrown);
    }
  })
}

Servlet

HttpServletRequest request;


//获取上传图片
      MultipartHttpServletRequest mureq = (MultipartHttpServletRequest) request;
      Map<String, MultipartFile> files = mureq.getFileMap(); 
      MultipartFile file =null;
      if (files != null &&files.size()> 0) { 
        
        Map.Entry<String, MultipartFile> f = files.entrySet().iterator().next(); 
        file = f.getValue();
      } 




//获取项目部署的路径




String rootPath = request.getSession().getServletContext().getRealPath("/");



 //获取上传图片的名称



String fileName = file.getOriginalFilename();








 //获取上传图片的大小



float size = file.getSize()




//在path路径下创建一个文件




File newFile = new File(path);




//判断文件是否存在



if(!newFile.exists()) {




newFile.mkdirs();//不存在的话,就开辟一个空间



}



//将上传的文件存储



file.transferTo(newFile);

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
比较详细的javascript对象的property和prototype是什么一种关系
Aug 06 Javascript
jQuery关键词说明插件cluetip使用指南
Apr 21 Javascript
javascript最基本的函数汇总
Jun 25 Javascript
全面解析Javascript无限添加QQ好友原理
Jun 15 Javascript
Bootstrap实现弹性搜索框
Jul 11 Javascript
利用yarn实现一个webpack+react种子
Oct 25 Javascript
微信小程序 新建登录页并实现tabBar隐藏
Jun 13 Javascript
vue Render中slots的使用的实例代码
Jul 19 Javascript
基于webpack 实用配置方法总结
Sep 28 Javascript
详解Vuex管理登录状态
Nov 13 Javascript
Nuxt使用Vuex的方法示例
Sep 06 Javascript
vue中echarts图表大小适应窗口大小且不需要刷新案例
Jul 19 Javascript
解决element-ui里的下拉多选框 el-select 时,默认值不可删除问题
Aug 14 #Javascript
Vue + Element-ui的下拉框el-select获取额外参数详解
Aug 14 #Javascript
vue在App.vue文件中监听路由变化刷新页面操作
Aug 14 #Javascript
解决vue项目中某一页面不想引用公共组件app.vue的问题
Aug 14 #Javascript
在vue中封装方法以及多处引用该方法详解
Aug 14 #Javascript
JS+css3实现幻灯片轮播图
Aug 14 #Javascript
浅谈vue获得后台数据无法显示到table上面的坑
Aug 13 #Javascript
You might like
针对初学PHP者的疑难问答(1)
2006/10/09 PHP
在任意字符集下正常显示网页的方法一
2007/04/01 PHP
PHP HTML代码串 截取实现代码
2009/06/29 PHP
php学习之流程控制实现代码
2011/06/09 PHP
php 如何设置一个严格控制过期时间的session
2017/05/05 PHP
PHP常见字符串操作函数与用法总结
2019/03/04 PHP
JS插件overlib用法实例详解
2015/12/26 Javascript
轻松搞定js表单验证
2016/10/13 Javascript
jQuery的Read()方法代替原生JS详解
2016/11/08 Javascript
js仿百度音乐全选操作
2017/01/13 Javascript
JS 组件系列之Bootstrap Table 冻结列功能IE浏览器兼容性问题解决方案
2017/06/30 Javascript
js实现水平滚动菜单导航
2017/07/21 Javascript
详解Angular4 路由设置相关
2017/08/26 Javascript
react-native使用react-navigation进行页面跳转导航的示例
2017/09/07 Javascript
微信小程序实现评论功能
2018/11/28 Javascript
js实现倒计时器自定义时间和暂停
2019/02/25 Javascript
JavaScript 实现下雪特效的示例代码
2020/09/09 Javascript
JavaScript 判断浏览器是否是IE
2021/02/19 Javascript
深入浅析ImageMagick命令执行漏洞
2016/10/11 Python
Django中的CBV和FBV示例介绍
2018/02/25 Python
python交互界面的退出方法
2019/02/16 Python
python的pyecharts绘制各种图表详细(附代码)
2019/11/11 Python
Python动态导入模块和反射机制详解
2020/02/18 Python
Pycharm github配置实现过程图解
2020/10/13 Python
如何基于Python和Flask编写Prometheus监控
2020/11/25 Python
详解HTML5中的Communication API基本使用方法
2016/01/29 HTML / CSS
庆元旦迎新年广播稿
2014/02/18 职场文书
供货协议书
2014/04/22 职场文书
竞争与合作演讲稿
2014/05/12 职场文书
2015年护士工作总结范文
2015/03/31 职场文书
MySQL Innodb关键特性之插入缓冲(insert buffer)
2021/04/08 MySQL
Golang中interface{}转为数组的操作
2021/04/30 Golang
关于ObjectUtils.isEmpty() 和 null 的区别
2022/02/28 Java/Android
redis调用二维码时的不断刷新排查分析
2022/04/01 Redis
Python实现双向链表
2022/05/25 Python
教你使用Ubuntu搭建DNS服务器
2022/09/23 Servers