
类型: 教育学习 版本: V5.7
大小: 663.8 时间: 2025-11-10





smartupload使用方法

如果想让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开发的上传下载组件,现在已经完美支持中文名字文件的上传下载工作。该插件使用很简单,能全程控制上传,还能对文件大小、类型等等方面做出限制,轻松过滤掉不符合要求的文件。需要的朋友下载试试吧!翰林pdf转换成word转换器破解版-翰林PDF转换成WORD转换器2016 官网免费版
方法一:(之前在页面直接跳转上传时能够解决问题,异步提交上传图片就不能正常了)
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");
1、使用简单。在JSP文件中仅仅书写三五行java代码就可以搞定文件的上传或下载,方便。
2、能全程控制上传。利用jspSmartUpload组件提供的对象及其操作方法,可以获得全部上传文件的信息(包括文件名,大小,类型,扩展名,文件数据等),方便存取。
3、能对上传的文件在大小、类型等方面做出限制。如此可以滤掉不符合要求的文件。
4、下载灵活。仅写两行代码,就能把Web服务器变成文件服务器。不管文件在Web服务器的目录下或在其它任何目录下,都可以利用jspSmartUpload进行下载。
启动体育下载-启动app5.0 安卓最新版
125.7M
体育赛事线上预约平台,启动app是为了打造高品质运动生活而生,支持场馆预约,信息查询,活动直播,产品销售等功能,可以按照不同的运动类型来选择场馆,很方便。亮点介...
网吧服务管家服务端下载-网吧服务管家服务端1.0.0.9 官方版
1,429.7M
对于一个网吧来说,也要跟着时代走,这时就要用网吧服务管家服务端,就能在最大程度高效的管理网吧,使其让网吧可以留住没有顾客,这个系统还总是会用抽奖活动来回馈网吧的...
PING值测试软件源码-易语言ping测试工具源码【可直接测试网站】
181.3M
大家都知道,做DDOS攻击的时候需要进行PING值测试,虽说CMD命令可以实现,但是终究比不上专业的测试工具!这里分享一款PING值测试软件源码,可以直接测试网...
模拟游戏公司经营(AmlPlay)2.2 安卓最新版
538.3M
模拟游戏公司经营(AmlPlay)是一款国外游戏厂商TodoSistemasSTI开发的游戏公司模拟经营手游,玩家需要随时掌握整个公司的运营,分析监控任何的动向...
艾兰岛Ylands联机版免费下载-艾兰岛Ylands联机版0.6 硬盘版
692.0M
艾兰岛Ylands联机版是最近上架的一款沙盒游戏,游戏的自由度非常高,类似mc,收集资源,建造制作、海陆战斗,还能自己修改地图!艾兰岛游戏攻略可以一个人,也可以...
rez解包注入工具-纪元2205解包注入工具2.0 绿色版
1,790.0M
纪元2205解包注入工具下载解压后,按下面描述的方法操作即可,有需要的赶紧来下载使用吧。纪元2205解包注入工具说明2205.bms>解包/导入所需插件q...
新浪show官方正式版下载-新浪SHOW(多人视频聊天工具)4.0.165 官方最新版
713.9M
新浪SHOW是一款由新浪公司开发的多人视频互动聊天工具。集成同城交友、婚恋交友、财经股票、同龄相约、音乐歌舞、情感驿站、网络教育等频道。新浪SHOW以房间为单位...
PlistToPng1.0免费版
1,992.1M
PlistToPng是一款pvr资源拆图工具,是用于PVR拆图的小工具,能够把pvr的图拆成单个的切图,原图存放在input目录下!可以把PVR文件拆成多个切图...
bigfun游戏社区3.7.4 安卓版
914.2M
这里有各种各样的游戏社区,每一天都是有最新的游戏资讯,你可以在这里进行谈论以及分享你的经验,同时也是可以看看别人的游戏世界,带给你不一样的视觉!bigfun游戏...
宝宝儿童好奇小屋下载-宝宝儿童好奇小屋游戏3.1.3 安卓版
1,804.3M
为儿童打造的一款益智游戏,宝宝儿童好奇小屋有丰富的游戏玩法,启蒙教育游戏,在玩游戏的同时可以学习到一些有用的小知识。游戏特色集儿童益智游戏中的游戏规则简单,操作...
快影视频剪辑app官方下载-快影app7.16.0.716002 安卓版
1,274.1M
快影视频制作软件是一款可以直接制作各种小视频的app,你可以使用这个软件轻松的制作你想要的视频,各种不同的视频内容自由编辑,可以选择视频的特效让视频更加的完美!...
石青站群优化大师1.7.0 站长版
879.8M
建站养站大师是一款非常强大的SEO站长优化软件,在这里用户可以使用各种方法吸引搜索引擎达到引流的目的,非常不错,喜欢的朋友们快点来下载该软件吧。强大的SEO软件...
印刷板电阻计算器(PCB线路电阻计算器)1.1.2 中文免费版
445.6M
PCB线路板上最多的就是电阻了,在这里为您提供的就是针对PCB线路板中电阻需求量的计算工具。大多数电气产品中都会用到印制板(PCB)。如果某块PCB具有低绝缘电...
USB火线下载-USB火线2代烧录器5.1c 免费版
134.3M
USB火线2代烧录器是一款非常实用的usb工具,这款软件操作简单明了,适合各年龄层玩家使用,首次安装驱动需要先拔下USB火线,再进行下一步操作。USB火线2代烧...
SketchBookPro 2013官方下载-Autodesk SketchBookPro 2013中文版6.2 电脑免费版
1,271.3M
AutodeskSketchBookPro是艺术家插画家专用的软件,最大的特色就是把你的笔记本和电脑变成一个自己的数字画板,笔刷工具非常齐全,绝对是电脑绘画师不...
全球售app下载-全球售app2.0.9 经纪人版
2025/10/21 22:23
Passpartout破解版下载-画店模拟器Passpartout The Starving Artist3dm免安装未加密版
2025/10/30 14:04
Hayaa软件3.0.1.1 安卓最新版
2025/10/20 06:31
银汉游戏时空猎人3官网版下载-时空猎人3猎人归来1.45.324安卓正式版
2025/10/19 08:47
郑州高新水务app苹果版1.0 官网最新版
2025/11/10 22:24
John The Zombie游戏下载-僵尸约翰John The Zombie3dm免安装版
2025/10/28 10:21
wifi共享工具-无线网络共享软件(MyWiFi)V4 绿色版
2025/10/23 12:29
能说会道 XP(语音朗读软件)V 3.75 官方最新版
2025/10/26 05:06
星空图片处理软件(图片剪切、缩小、压缩小工具)v1.0 绿色免费版
2025/11/04 04:23
弹壳特攻队国际服破解版下载-弹壳特攻队国际服破解版(survivor.io)3.10.1 免广告版
2025/11/01 17:25
战地模拟器Ravenfield解压即玩-战地模拟器Ravenfield中文免安装版
2025/10/19 11:58
光影魔术手免费版_附带注册机
2025/10/28 02:35
千秋日历1.0 安卓最新版
2025/11/09 20:24
中国古典武学秘籍-吾爱破解武学秘籍资源获取工具1.0 吾爱破解内部版
2025/11/07 04:52
植物大战僵尸95版下载-植物大战僵尸95版电脑版单文件版
2025/11/10 11:38
植物大战僵尸95版下载-植物大战僵尸95版电脑版单文件版
2025/11/10 11:38更新
所谓95版本意思并不是95年出来不的,而是大神修改了这个95次,这个版本也是最好的一次,修改了很多的功能,以经典的植物大战僵尸为玩法,包含了很多的植物可以体验哦...
支持 ( 44 ) 盖楼(回复)
支持 ( 47 ) 盖楼(回复)
支持 ( 183 ) 盖楼(回复)
支持 ( 27 ) 盖楼(回复)
支持 ( 12 ) 盖楼(回复)
支持 ( 153 ) 盖楼(回复)
支持 ( 191 ) 盖楼(回复)
支持 ( 105 ) 盖楼(回复)
支持 ( 178 ) 盖楼(回复)
支持 ( 54 ) 盖楼(回复)
支持 ( 160 ) 盖楼(回复)
支持 ( 110 ) 盖楼(回复)
支持 ( 77 ) 盖楼(回复)
支持 ( 112 ) 盖楼(回复)
支持 ( 71 ) 盖楼(回复)
支持 ( 138 ) 盖楼(回复)
支持 ( 89 ) 盖楼(回复)
支持 ( 185 ) 盖楼(回复)
支持 ( 107 ) 盖楼(回复)
支持 ( 7 ) 盖楼(回复)