form设值为:enctype="multipart/form-data" 的问题

本文详细解释了表单中使用enctype=multipart/form-data的意义及其如何实现文件上传功能。文章通过具体示例介绍了如何配置文件上传的限制条件,如允许上传的文件类型、文件大小等,并展示了如何通过SmartUpload组件处理文件上传。

表单中enctype="multipart/form-data"的意思,是设置表单的MIME编码。默认情况,这个编码格式是application/x-www-form-urlencoded,不能用于文件上传;只有使用了multipart/form-data,才能完整的传递文件数据,进行下面的操作.
enctype="multipart/form-data"是上传二进制数据;

 

form里面的input的值以2进制的方式传过去。
form里面的input的值以2进制的方式传过去,所以request就得不到值了。 也就是说加了这段代码,用request就会传递不成功,取表单值加入数据库时,用到下面的:

 

  1. SmartUpload upload = new SmartUpload();   
  2.      try{   
  3.      upload.initialize(config, request, response);   
  4.     // 允许上传的文件类型   
  5.      upload.setAllowedFilesList("doc,xls,");   
  6.     // 拒绝上传的文件类型   
  7.      upload.setDeniedFilesList("exe,bat,jsp");   
  8.     // 允许上传文件的单个最大大小   
  9.      upload.setMaxFileSize(1024 * 1024 * 20);   
  10.     // 允许上传文件的最大大小总和   
  11.     // upload.setTotalMaxFileSize(1024*1024*10);   
  12.     //上传数据   
  13.      upload.upload();   
  14.      }   
  15.     catch (SmartUploadException e){   
  16.          e.printStackTrace();   
  17.         return;   
  18.      }   
  19.   
  20.     Request req = upload.getRequest();   
  21.      String spid=(String)req.getParameter("teacherId");   
  22.          //.....   
  23.          //To do something  
SmartUpload upload = new SmartUpload();
     try{
 upload.initialize(config, request, response);
 // 允许上传的文件类型
 upload.setAllowedFilesList("doc,xls,");
 // 拒绝上传的文件类型
 upload.setDeniedFilesList("exe,bat,jsp");
 // 允许上传文件的单个最大大小
 upload.setMaxFileSize(1024 * 1024 * 20);
 // 允许上传文件的最大大小总和
 // upload.setTotalMaxFileSize(1024*1024*10);
 //上传数据
 upload.upload();
 }
 catch (SmartUploadException e){
  e.printStackTrace();
  return;
 }

 Request req = upload.getRequest();
 String spid=(String)req.getParameter("teacherId");
         //.....
         //To do something
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值