smartupload实现文件上传时获取表单数据(推荐)


Posted in Javascript onDecember 12, 2016

实现文件上传的form表单必须满足两个条件:method="post" enctype="multipart/form-data"

表单中enctype="multipart/form-data"的意思是设置表单的MIME编码。默认情况,这个编码格式是application/x-www-form-urlencoded,不能用于文件上传;只有使用了multipart/form-data,才能完整的传递文件数据。enctype="multipart/form-data"是上传二进制数据; form里面的input的值以二进制的方式传过去。所以request就得不到值了, 也就是说加了这段代码,用request就会传递不成功。

取表单字段值时,用下面的方式:

SmartUpload su = new SmartUpload(); //新建一个SmartUpload对象 
su.getRequest().getParameterValues(String name); //取数组值  
su.getRequest().getParameter(String name); //取单个参数单个值

注:在使用SmartUpload时需要添加相应的jar包

String softname=su.getRequest().getParameter("softname");

注意:一定要在su.upload();,之后使用,才可以获得值!!

<span style="font-size:14px;">public void doPost(HttpServletRequest request, HttpServletResponse response) 
      throws ServletException, IOException { 
      SmartUpload mySmartUpload = new SmartUpload(); 
      try{ 
        // Initialization 
        mySmartUpload.initialize(config,request,response); 
        mySmartUpload.setMaxFileSize(10*1024*1024);//限制上传文件的大小 
        //mySmartUpload.setAllowedFilesList("txt,html,jpg,js");//设置允许上传的文件类型 
        mySmartUpload.setDeniedFilesList("exe,doc");//设置禁止上传的文件列表 
        mySmartUpload.upload(); 
        String hString = mySmartUpload.getRequest().getParameter("name1"); 
        //System.out.println(hString); 
        //System.out.println(mySmartUpload.getFiles().getCount()); 
        for(int i = 0 ;i <mySmartUpload.getFiles().getCount();i++){//多个文件的上传 
          File file = mySmartUpload.getFiles().getFile(i); 
          if(file.getSize()!=0){ 
            //拼凑上传文件的新名称 
            String fileNameString = System.currentTimeMillis()+"."+file.getFileExt(); 
            //通过servlet的实际路径拼凑上传文件的保存路径,实际使用需要修改此路径 
            String path = "/upload123123"+java.io.File.separator+fileNameString; 
            file.saveAs(path); 
          } 
          Thread.sleep(100); 
          /*下载文件的语句 
          mySmartUpload.downloadFile("/路径"+"文件名称");*/ 
        } 
      }catch(Exception e){ 
        e.printStackTrace(); 
      } 
  }</span>
Javascript 相关文章推荐
jquery 插件 人性化的消息显示
Jan 21 Javascript
Javascript在IE或Firefox下获取鼠标位置的代码
Dec 18 Javascript
javascript来定义类的规范小结
Nov 19 Javascript
jquery中focus()函数实现当对象获得焦点后自动把光标移到内容最后
Sep 29 Javascript
JavaScript实现多维数组的方法
Nov 20 Javascript
深入理解JavaScript中的浮点数
May 18 Javascript
jQuery获取单击节点对象的方法
Jun 02 Javascript
浅谈layer的iframe弹窗给里面的标签赋值的问题
Nov 10 Javascript
js for循环倒序输出数组元素的实例
Mar 01 Javascript
electron 安装,调试,打包的具体使用
Nov 06 Javascript
小程序分享链接onShareAppMessage的具体用法
May 22 Javascript
Element Popover 弹出框的使用示例
Jul 26 Javascript
Javascript中call,apply,bind方法的详解与总结
Dec 12 #Javascript
微信小程序开发之圆形菜单 仿建行圆形菜单实例
Dec 12 #Javascript
深入理解javascript中concat方法
Dec 12 #Javascript
js仿微信语音播放实现思路
Dec 12 #Javascript
解析JavaScript数组方法reduce
Dec 12 #Javascript
实例分析浏览器中“JavaScript解析器”的工作原理
Dec 12 #Javascript
JS双击变input框批量修改内容
Dec 12 #Javascript
You might like
推荐文章系统(一)
2006/10/09 PHP
windows下开发并编译PHP扩展的方法
2011/03/18 PHP
PHP中设置时区方法小结
2012/06/03 PHP
php中遍历二维数组并以表格的形式输出的方法
2017/01/03 PHP
php 提交表单 关闭layer弹窗iframe的实例讲解
2018/08/20 PHP
php设计模式之状态模式实例分析【星际争霸游戏案例】
2020/03/26 PHP
javascript 时间比较实现代码
2009/10/28 Javascript
js实现a标签超链接提交form表单的方法
2015/06/24 Javascript
jquery实现用户信息修改验证输入方法汇总
2015/07/18 Javascript
JavaScript多并发问题如何处理
2015/10/28 Javascript
Js遍历键值对形式对象或Map形式的方法
2016/08/08 Javascript
Vue-Router实现页面正在加载特效方法示例
2017/02/12 Javascript
基于 Vue.js 之 iView UI 框架非工程化实践记录(推荐)
2017/11/21 Javascript
Express下采用bcryptjs进行密码加密的方法
2018/02/07 Javascript
详解ES6 Promise的生命周期和创建
2019/08/18 Javascript
vue + node如何通过一个Txt文件批量生成MP3并压缩成Zip
2020/06/02 Javascript
解决vuex数据页面刷新后初始化操作
2020/07/26 Javascript
python实现bitmap数据结构详解
2014/02/17 Python
python+mysql实现简单的web程序
2014/09/11 Python
python统计中文字符数量的两种方法
2019/01/31 Python
python并发编程多进程 互斥锁原理解析
2019/08/20 Python
tensorflow 实现自定义梯度反向传播代码
2020/02/10 Python
python如何通过闭包实现计算器的功能
2020/02/22 Python
python实现引用其他路径包里面的模块
2020/03/09 Python
利用css3画个同心圆示例代码
2017/07/03 HTML / CSS
HTML5 Web 存储详解
2016/09/16 HTML / CSS
美国鲍勃商店:Bob’s Stores
2018/07/22 全球购物
数据管理员的自我评价分享
2013/11/15 职场文书
积极分子思想汇报
2014/01/04 职场文书
男方父母证婚词
2014/01/12 职场文书
大学同学聚会邀请函
2014/01/19 职场文书
运动会宣传口号
2014/06/09 职场文书
市场部岗位职责
2015/02/12 职场文书
2019个人工作态度自我评价
2019/04/24 职场文书
读《人生的智慧》有感:闲暇是人生的精华
2019/12/25 职场文书
Mysql使用全文索引(FullText index)的实例代码
2022/04/03 MySQL