SmartUpload组件只有5个分别是:File、Files、Request、SmartUpload、SmartUploadException类,其中,File代表用户上传的文件,Files代表用户上传的多个文件,Request相当于HttpServletRequest的功能,用于获取表单数据,SmartUpload是最核心的类,负责文件上传下载,SmartUploadException是自定义异常。

SmartUpload的基本使用思路如下:
jsp前台代码表单提交
<form action="" method="post" name="form1" onSubmit="r" enctype="multipart/form-data"> <input type="file" name="img" size="34"></td> </form>
//创建SmartUpload的实例
SmartUpload su = new SmartUpload();
//初始化,如果是在Servlet中使用,则调用另一个重载方法:initialize(ServletConfig, HttpServletRequest, HttpServletResponse)
su.initialize(pageContext);
//完成上传操作
su.upload();
//将上传的文件保存到指定的文件夹。参数1表示文件保存的路径,参数2是可选选项
su.save("uploads/", SmartUpload.SAVE_VIRTUAL);
在save方法中,有三个常量:SAVEAS_PHYSICAL,SAVEAS_VIRTUAL,SAVEAS_AUTO,意义分别是:
SAVEAS_PHYSICAL表明以操作系统的根目录为文件根目录另存文件,SAVEAS_VIRTUAL表明以Web应用程序的根目录为文件根目录另存文件,SAVEAS_AUTO则表示让组件决定,当Web应用程序的根目录存在另存文件的目录时,它会选择SAVEAS_VIRTUAL,否则会选择SAVEAS_PHYSICAL。
如果希望给文件重命名(这是经常遇到的问题),可以调用File类的saveAs方法保存单个的文件,代码如下:
SmartUpload su = new SmartUpload();
su.initialize(pageContext);
//指定扩展名
su.setAllowedFilesList("bmp,jpg,bng,gif");
//指定大小
su.setMaxFileSize(1 * 1024 * 1024);
su.upload();
//单独保存文件,用UUID名称保存
Files files = su.getFiles();
for(int i = 0; i < files.getCount(); i ++){
File f = files.getFile(i);
if(!f.isMissing()){
//保存单个文件,参数1为文件名,参数2为可选选项。
f.saveAs("uploads/" +
UUID.randomUUID().toString() + "." +
f.getFileExt(),
SmartUpload.SAVE_VIRTUAL);
}
}
使用SmartUpload实现文件下载就更简单了,不再直接和数据流打交道,非常贴心的设计。SmartUpload定义了一个名为downloadFile()的方法,该方法的参数指定要下载的文件即可。当然,在此之前要先调用setContentDisposition(null),参数为null表示告知浏览器下载文件。代码如下:
SmartUpload su = new SmartUpload();
su.initialize(pageContext);
su.setContentDisposition(null); //表示这是一个下载操作
su.downloadFile("uploads/fa79a56a-5e64-407d-a22b-8606d512b447.jpg");
smartupload组件包下载地址:http://download.csdn.net/detail/qq_24886937/9729267
以上所述是小编给大家介绍的使用smartupload组件实现jsp+jdbc上传下载文件实例解析,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
# smartupload组件下载
# jsp+servlet实现文件上传与下载功能
# jsp实现文件上传下载的程序示例
# jsp文件上传与下载实例代码
# Jsp页面实现文件上传下载类代码
# JSP servlet实现文件上传下载和删除
# 上传
# 在此
# 另存
# 可选
# 表单
# 小编
# 应用程序
# 这是
# 是在
# 多个
# 下载地址
# 这是一个
# 给大家
# 扩展名
# 自定义
# 要先
# 就更
# 它会
# 则会
# 所述
相关文章:
如何设计高效校园网站?
如何通过云梦建站系统实现SEO快速优化?
制作网站的网址是什么,请问后缀为.com和.com.cn还有.cn的这三种网站是分别是什么类型的网站?
如何自定义建站之星网站的导航菜单样式?
香港服务器租用费用高吗?如何避免常见误区?
焦点电影公司作品,电影焦点结局是什么?
网站制作网站,深圳做网站哪家比较好?
小建面朝正北,A点实际方位是否存在偏差?
一键网站制作软件,义乌购一件代发流程?
建站主机选虚拟主机还是云服务器更好?
贸易公司网站制作流程,出口贸易网站设计怎么做?
如何选择高效便捷的WAP商城建站系统?
rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted
北京制作网站的公司,北京铁路集团官方网站?
如何快速搭建高效WAP手机网站?
制作网站怎么制作,*游戏网站怎么搭建?
长春网站建设制作公司,长春的网络公司怎么样主要是能做网站的?
黑客如何利用漏洞与弱口令入侵网站服务器?
如何在阿里云域名上完成建站全流程?
利用JavaScript实现拖拽改变元素大小
香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化
c# await 一个已经完成的Task会发生什么
中山网站制作网页,中山新生登记系统登记流程?
如何选择美橙互联多站合一建站方案?
javascript基本数据类型及类型检测常用方法小结
如何用好域名打造高点击率的自主建站?
建站主机功能解析:服务器选择与快速搭建指南
建站之星如何助力企业快速打造五合一网站?
c# F# 的 MailboxProcessor 和 C# 的 Actor 模型
网站制作中优化长尾关键字挖掘的技巧,建一个视频网站需要多少钱?
济南专业网站制作公司,济南信息工程学校怎么样?
外汇网站制作流程,如何在工商银行网站上做外汇买卖?
,怎么用自己头像做动态表情包?
佛山网站制作系统,佛山企业变更地址网上办理步骤?
东莞专业网站制作公司有哪些,东莞招聘网站哪个好?
如何在建站宝盒中设置产品搜索功能?
香港服务器租用每月最低只需15元?
详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)
如何正确下载安装西数主机建站助手?
建站之星安全性能如何?防护体系能否抵御黑客入侵?
建站之星ASP如何实现CMS高效搭建与安全管理?
制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?
宿州网站制作公司兴策,安徽省低保查询网站?
安徽网站建设与外贸建站服务专业定制方案
c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】
金*站制作公司有哪些,金华教育集团官网?
如何在阿里云ECS服务器部署织梦CMS网站?
php8.4新语法match怎么用_php8.4match表达式替代switch【方法】
制作网站的基本流程,设计网站的软件是什么?
香港服务器选型指南:免备案配置与高效建站方案解析
*请认真填写需求信息,我们会在24小时内与您取得联系。