
类型: 语言学习 版本: V3.8
大小: 97.0 时间: 2025-11-18





1、使用简单。在JSP文件中仅仅书写三五行java代码就可以搞定文件的上传或下载,方便。
2、能全程控制上传。利用jspSmartUpload组件提供的对象及其操作方法,可以获得全部上传文件的信息(包括文件名,大小,类型,扩展名,文件数据等),方便存取。
3、能对上传的文件在大小、类型等方面做出限制。如此可以滤掉不符合要求的文件。
4、下载灵活。仅写两行代码,就能把Web服务器变成文件服务器。不管文件在Web服务器的目录下或在其它任何目录下,都可以利用jspSmartUpload进行下载。
smartupload使用方法聚优名品下载-聚优名品app1.0 手机版

如果想让Tomcat服务器的所有Web应用程序都能用它,必须做如下工作:
1.进入命令行状态,将目录切换到Tomcat的webapps/jspsmartupload/WEB-INF目录下。
2.运行JAR打包命令:jarcvfjspSmartUpload.jarcom,也可以打开资源管理器,切换到当前目录,用WinZip将com目录下的所有文件压缩成jspSmartUpload.zip,然后将jspSmartUpload.zip换名为jspSmartUpload.jar文件即可。
3.将jspSmartUpload.jar拷贝到Tomcat的shared/lib目录下。
上传相关代码
uploadFile.jsp
<%@pagecontentType="text/html;charset=GB2312"%>
<formmethod="post"action="doUpload.jsp"enctype="multipart/form-data">
<tablewidth="315"border="0">
<tr>
<tdwidth="309"align="center"><inputtype="file"name="file1"size="30"></td>
</tr>
<tr>
<tdalign="center"><inputtype="file"name="file2"size="30"></td>
<tr>
<tdalign="center"><inputtype="submit"name="Submit"value="上传"></td>
</tr>
</table>
</form>
doUpload.jsp
<%@pagecontentType="text/html;charset=gbk"
import="java.util.*,com.jspsmart.upload.*"%>
<html>
<head>
<title>文件上传处理页面</title>
<metahttp-equiv="Content-Type"content="text/html;charset=gbk">
</head>
<body>
<%
//新建一个SmartUpload对象
SmartUploadsu=newSmartUpload();
//上传初始化
su.initialize(pageContext);
//设定上传限制
//1.限制每个上传文件的最大长度。
//su.setMaxFileSize(10000);
//2.限制总上传数据的长度。
//su.setTotalMaxFileSize(20000);
//3.设定允许上传的文件(通过扩展名限制),仅允许doc,txt文件。
//su.setAllowedFilesList("doc,txt");
//4.设定禁止上传的文件(通过扩展名限制),禁止上传带有exe,bat,jsp,htm,html扩展名的文件和没有
//扩展名的文件。
//su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
//上传文件
su.upload();
//将上传文件全部保存到指定目录,需要先在在Web应用的根目录下,创建一个upload目录
intcount=su.save("/upload");
out.println(count+"个文件上传成功!<br>");
//利用Request对象获取参数之值
out.println("TEST="+su.getRequest().getParameter("TEST")
+"<BR><BR>");
//逐一提取上传文件信息,同时可保存文件。
for(inti=0;i<su.getFiles().getCount();i++)
{
com.jspsmart.upload.Filefile=su.getFiles().getFile(i);
//若文件不存在则继续
if(file.isMissing())continue;
//显示当前文件信息
out.println("<TABLEBORDER=1>");
out.println("<TR><TD>表单项名(FieldName)</TD><TD>"
+file.getFieldName()+"</TD></TR>");
out.println("<TR><TD>文件长度(Size)</TD><TD>"+
file.getSize()+"</TD></TR>");
out.println("<TR><TD>文件名(FileName)</TD><TD>"
+file.getFileName()+"</TD></TR>");
out.println("<TR><TD>文件扩展名(FileExt)</TD><TD>"
+file.getFileExt()+"</TD></TR>");
out.println("<TR><TD>文件全名(FilePathName)</TD><TD>"
+file.getFilePathName()+"</TD></TR>");
out.println("</TABLE><BR>");
//将文件另存
//file.saveAs("/upload/"+myFile.getFileName());
//另存到以WEB应用程序的根目录为文件根目录的目录下
//file.saveAs("/upload/"+myFile.getFileName(),su.SAVE_VIRTUAL);
//另存到操作系统的根目录为文件根目录的目录下
//file.saveAs("c:\temp\"+myFile.getFileName(),su.SAVE_PHYSICAL);
}
%>
</body>
</html>
下载相关代码
download.jsp
<%@pagecontentType="text/html;charset=gb2312"%>
<html>
<head>
<title>下载</title>
</head>
<body>
<ahref="do_download.jsp">点击下载</a>
</body>
</html>
do_download.jsp
<%@pagecontentType="text/html;charset=gb2312"
import="com.jspsmart.upload.*"%>
<%
//新建一个SmartUpload对象
SmartUploadsu=newSmartUpload();
//初始化
su.initialize(pageContext);
//设定contentDisposition为null以禁止浏览器自动打开文件,
//保证点击链接后是下载文件。若不设定,则下载的文件扩展名为doc时,浏览器将自动用word打开它。
//扩展名为pdf时,浏览器将用acrobat打开。
su.setContentDisposition(null);
//下载文件,保证Web应用下的upload目录下有测试文档.doc文件。
su.downloadFile("/upload/测试文档.doc");
%>
注意:jspSmartUpload编写下载文件代码时,若下载的文件名中有汉字,则浏览器在提示另存的文件名时,显示的是一堆乱码。为了给jspSmartUpload组件增加下载中文文件的支持,对返回给浏览器的另存文件名进行UTF-8编码后,浏览器便能正确显示中文名字了。在SmartUpload.java文件中,增加的方法如下:
publicstaticStringtoUtfString(Strings){
StringBuffersb=newStringBuffer();
for(inti=0;i<s.length();i++){
charc=s.charAt(i);
if(c>=0&&c<=255){
sb.append(c);
}else
{
byte[]b;
try{
b=Character.toString(c).getBytes("utf-8");
}catch(Exceptionex){
System.out.println(ex);
b=newbyte[0];
}
for(intj=0;j<b.length;j++){
intk=b[j];
if(k<0)k+=256;
sb.append("%"+Integer.toHexString(k).toUpperCase());
}
}
}
returnsb.toString();
}
将文件名转换为UTF-8形式的编码形式。UTF-8编码对英文未作任何处理,对中文则需要转换为%XX的形式。toUtf8String方法中,直接利用Java语言提供的编码转换方法获得汉字字符的UTF-8编码,之后将其转换为%XX的形式。
修改getFileName()方法如下,使其调用toUftString()方法
privateStringgetFileName(Strings){
inti=0;
Strings1=toUtfString(s);
i=s1.lastIndexOf('/');
if(i!=-1){
returns1.substring(i+1,s1.length());
}
i=s1.lastIndexOf('\');
if(i!=-1){
returns1.substring(i+1,s1.length());
}else{
returns1;
}
}
jspsmartupload.jar是一款针对jsp开发的上传下载组件,现在已经完美支持中文名字文件的上传下载工作。该插件使用很简单,能全程控制上传,还能对文件大小、类型等等方面做出限制,轻松过滤掉不符合要求的文件。需要的朋友下载试试吧!
方法一:(之前在页面直接跳转上传时能够解决问题,异步提交上传图片就不能正常了)
1.解决中文乱码:
【1】:首先上传页面和接收页面都必须制定编码格式为GBK;
<%@pagelanguage="java"import="java.util.*"pageEncoding="GBK"%>
【2】:在上传页面要response.setCharacterEncoding("GBK");
【3】:在接收页面要request.setCharacterEncoding("GBK");
【4】:注意上传时表单要指定编码为:enctype="multipart/form-data"
【5】:注意上传时表单要指定方法为:method="post"
方法二:(异步提交表单能正常解决)
【1】上传页面:(对参数做一次encodeURI)js
//对表单中的中文区域值得获取并进行转码
varname= parent.window.$("#tabs_name").val();
vardirection= parent.window.$("#tabs_direction").val();
parent.window.$("#tabs_name").val(encodeURI(name));
parent.window.$("#tabs_direction").val(encodeURI(direction));
parent.window.$('#subject_modify').submit(); //提交表单
【2】接收参数页面(对参数做一次URLDecoder)
Stringname=smart.getRequest().getParameter("name");
name=URLDecoder.decode(name,"utf-8");
万博能玩彩票吗 七乐彩选几个好 九游会绿色版 亚博足球怎么买 亚博有几个网址
G沙盒仇恨甜瓜游乐场联动版下载-G沙盒仇恨甜瓜游乐场联动版本15.17.28 最新版
585.4M
G沙盒仇恨甜瓜游乐场联动版本全新系列最新游戏,里面融合了甜瓜的元素,超多惊喜内容设定,游戏操作起来畅玩无忧,在超大的地图场景之中,能够遇到更多的敌人,享受自定义...
电箱app下载最新版-电箱app酷安版本v3.5.4 安卓版
199.7M
电箱app酷安上的最新版本,是一款手机电池电量管理软件。可以了解手机电池的温度,电压,电池健康程度,电量百分比,电池最大容量等,是一款能全面了解手机电池的插件类...
上班打卡app下载-上班打卡记录软件1.16 安卓版
883.3M
上班打卡app是一款用来记录自己上班打卡时间的软件,帮助你记录打卡时间,记录工时,还可以提醒自己打卡,统计每月工资,需要的朋友可以来下载使用!上班打卡app介绍...
定时关机小精灵1.0 绿色免费版
864.3M
定时关机小精灵是一款电脑上使用到的关机设置软件,可以帮助你设置时间进行关机,非常的方便好使用的一款自动定时关机软件,有需要的朋友就可以来看看!定时关机小精灵介绍...
我家亳州app苹果下载-我家亳州手机客户端苹果版1.3.2 官网ios版
1,771.9M
我家亳州app是一看便民生活应用软件,为亳州地区的市民朋友提供查询缴费、医疗保健、新闻资讯等服务,让你的日常生活更顺心!我家亳州app官方简介我家亳州APP是亳...
田家庵区人民法院1.0 法院版
1,569.3M
田家庵区人民法院由田家庵区人民法院联合人民法院报中国法治客户端主办开发的一款法院app,为用户提供了司法公开的信息查询,喜欢的同学快来下载吧!弘扬法治精神,展示...
最终幻想13语言切换工具下载-最终幻想13语言切换器1.0 绿色免费版
1,855.1M
最终幻想13八国语言切换器,看名字就知道是给不同语言的玩家使用的一款游戏语言切换器,非常实用。使用方法1.解压缩2.复制语言切换工具到游戏目录3.运行语言切换工...
小熊快听app-小熊快听1.0 安卓最新版
1,922.2M
一个专门为车主打造的音频类电台音乐收听平台——小熊快听app可以在简短的时间路上收听到非常不错的音乐,还有智能分类推荐,可以下载和收藏你喜欢的音乐,还不错,小巧...
2017全民国防教育日宣标语-9·16全民国防教育日宣传标语大全doc 精选版
1,004.7M
每年9月的第三个星期六为全民国防教育日,全民国防教育活动的开展不仅普及国防教育知识还能弘扬爱国主义精神。本站为大家带来了9·16全民国防教育日宣传标语大全,有需...
司法部苹果版下载-司法部客户端1.0 官方手机版
1,136.8M
司法部app是中华人民共和国司法部官方打造的一款手机客户端,通过这个平台发布新闻信息,行政权威信息,解读最新的政策信息。司法部使用方法查看最新新闻热点详细的机构...
河南百校联盟2017高三3月联考化学答案-河南百校联盟2017高三3月联考化学试卷及答案完整解析版
512.7M
高考是中国大陆(不包括香港、澳门)合格的高中毕业生和具有同等学力的考生参加的选拔性考试。普通高等学校根据考生成绩,按已确定的招生计划,德、智、体全面衡量,择优录...
木水曰批量文件重命名软件1.5.0.1 绿色版
1,412.1M
木水曰批量文件重命名就是款功能非常强大的绿色重命名文件工具,它能支持多种条件来进行不同的命名,而且它还支持大批量的文件的处理,更重要的这款软件智能化程度很高,能...
VoiceTra最新版下载-VoiceTra翻译软件8.1.1 安卓手机版
809.9M
VoiceTra是一款语言翻译软件,这个翻译软件不同于其他的翻译,VoiceTra完美的支持超多翻译的语言,可以自定义的搜索语言功能,可以自动的发音并且翻译!V...
360网购保镖2.0.1.1001 官网最新版
1,121.5M
360网购保镖是一款360推出的网络购物安全工具,在您进行网络购物、网银充值等重要操作时会自动帮您清理、拦截您电脑中所有危险、可疑的程序运行,自动拦截虚假购物、...
龙胜到家app下载-龙胜到家2.0.0 安卓版
1,801.9M
龙胜到家是一款按摩服务平台,大家可以在该平台上获得技师上门服务,各种服务应有尽有,放松你的身心,不需要出门,在就预约就行,有需要的朋友们快来东坡下载吧!龙胜到家...
渭南社区app1.0.7 安卓版
2011/05/04 09:31
知鸟e学app官方安卓下载-知鸟e学2.0.2 官方正式版
2011/05/05 12:19
华梦优筑装修方案建材购物平台-华梦优筑3.4.4 安卓便捷版
2011/05/05 02:05
小猫剪辑app下载-小猫剪辑安卓版1.0.0 免费版
2011/04/20 02:27
侏罗纪世界Alive国服下载-侏罗纪世界AR游戏1.12.20安卓手机版
2011/04/10 03:30
老子当年要是不跳江表情图片下载-老子当年不跳江你们有个鸡毛粽子吃表情包完整无水印版
2011/05/07 21:06
彩虹棉花糖小店下载-彩虹棉花糖小店游戏1.0.6 安卓版
2011/04/15 10:41
Slippery Slides游戏下载-Slippery Slides手游0.0.4 手机版
2011/04/14 21:29
HoneyView中文版下载-蜂蜜图片浏览器HoneyView5.38绿色免费版
2011/04/14 14:45
CD/DVD数据修复(CDRoller)10.2.70 英文注册版
2011/05/07 07:24
疯狂机场时间机器游戏英文免安装版
2011/05/03 21:21
钱周周app下载-钱周周app1.3.0 安卓版
2011/04/21 04:33
诺顿2009破解程序
2011/05/09 18:34
QQ表情包下载-微信樱桃小丸子QQ表情包2014 绿色版
2011/05/07 20:35
住墅民宿app1.2.2 安卓最新版
2011/04/16 00:28
住墅民宿app1.2.2 安卓最新版
2011/04/16 00:28更新
住墅民宿app是一个全新的民宿服务平台,用户可以通过平台快速寻找合适的民宿,快速订购房源,非常适合旅游的朋友!平台介绍住墅网是住墅(中国)旗下专注高端民宿短租预...
支持 ( 37 ) 盖楼(回复)
支持 ( 137 ) 盖楼(回复)
支持 ( 97 ) 盖楼(回复)
支持 ( 162 ) 盖楼(回复)
支持 ( 174 ) 盖楼(回复)
支持 ( 38 ) 盖楼(回复)
支持 ( 70 ) 盖楼(回复)
支持 ( 10 ) 盖楼(回复)
支持 ( 124 ) 盖楼(回复)
支持 ( 31 ) 盖楼(回复)
支持 ( 189 ) 盖楼(回复)
支持 ( 13 ) 盖楼(回复)
支持 ( 110 ) 盖楼(回复)
支持 ( 69 ) 盖楼(回复)
支持 ( 190 ) 盖楼(回复)
支持 ( 50 ) 盖楼(回复)
支持 ( 55 ) 盖楼(回复)
支持 ( 151 ) 盖楼(回复)
支持 ( 28 ) 盖楼(回复)
支持 ( 40 ) 盖楼(回复)