明霞山资源网 Design By www.htccd.com
实现文件上传的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>
标签:
smartupload上传文件
明霞山资源网 Design By www.htccd.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
明霞山资源网 Design By www.htccd.com
暂无评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。