前几天用基础http协议实现单个文件的上传和下载,发现并不能满足项目的需求,比如一次上传下载多个文件、或者是限制上传文件的格式等。于是看了看SmartUpload这个打包好的组件,感觉还不错,分享给大家!(注:servlet实现的)

关于SmartUpload的介绍和优点就不再多说了,比如:使用简单、能全程控制上传、下载灵活等。

下载就开是使用SmartUpload来实现我们的需求

1:批量上传SmartUpload su = new SmartUpload();

//初始化对象

su.initialize(getServletConfig(), req, resp);

//设置上传文件大小

su.setMaxFileSize(1024*1024*10);

//设置所有文件的大小

su.setTotalMaxFileSize(1024*1024*100);

//设置允许上传文件类型

su.setAllowedFilesList("txt,jpg,gif");

String result = "上传成功!";

//设置禁止上传的文件类型

try {

//和setAllowedFilesList是相对的,一般项目保留一个就可以满足需求

su.setDeniedFilesList("rar,jsp,js");

//上传文件

su.upload();

int count = su.save(filePath);

System.out.println("上传成功" + count + "个文件!");

} catch (Exception e) {

result = "上传失败!";

//对异常作出不同的提示,如果感兴趣的话,可以 测试一下异常代号

if(e.getMessage().indexOf("1015")!=-1){

result = "上传失败:上传文件类型不正确!";

}else if(e.getMessage().indexOf("1010")!=-1){

result = "上传失败:上传文件类型不正确!";

}else if(e.getMessage().indexOf("1105")!=-1){

result = "上传失败:上传文件大小超出单个文件最大值!";

}else if(e.getMessage().indexOf("1110")!=-1){

result = "上传失败:上传文件总大小超出总文件最大值!";

}

e.printStackTrace();

}

2:批量下载

这里就只说一下思路,多个文件的下载,需要在下载前把文件打包,不然下载时浏览器会弹出多个提示下载框,个用户体验不好,具体实现就看项目代码把

本地测试地址:http://localhost:8080/fileBatchWithSmart/jsp/02.jsp

3:运行截图

smartupload java_java servlet通过SmartUpload开发文件批量上传、批量下载源码分享相关推荐

  1. 2011级-csdn-java-张侃— JDBC开发—文件的上传和下载(一)

    private String id; private String savename; //上传文件的名称,文件的uuid名 private String realName; //上传文件的真实名称 ...

  2. asp.net web开发——文件的上传和下载

    HTML部分 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="index.a ...

  3. SpringMVC实现文件的上传和下载

    SpringMVC实现文件的上传和下载http://www.bieryun.com/1120.html 前些天一位江苏经贸的学弟跟我留言问了我这样一个问题:"用什么技术来实现一般网页上文件的 ...

  4. jsp+servlet实现文件的上传和下载

    实现文件的上传和下载首先需要理解几个知识,这样才可以很好的完成文件的上传和下载: (1):上传文件是上传到服务器上,而保存到数据库是文件名 (2):上传文件是以文件转换为二进制流的形式上传的 (3): ...

  5. 文件的上传和下载---学习笔记

    文件上传原理 在TCP/IP中,最早出现的文件上传机制是FTP.它是将文件由客户端发送到服务器的标准机制. 但是JSP编程中不能使用FTP方法来上传文件,这是由JSP运行机制所决定的. JSP中上传文 ...

  6. 初学Java Web(7)——文件的上传和下载

    文件上传 文件上传前的准备 在表单中必须有一个上传的控件 <input type="file" name="testImg"/> 因为 GET 方式 ...

  7. SpringMVC与JSON传值,取值,使用SpringMVC实现文件的上传与下载,SpringMVC拦截器

    一. JSON 1.1 什么是JSON 在实际开发中,通常需要和别的系统交换数据,数据交换的格式通常有XML和JSON等: JSON(JavaScript Object Notation:JavaSc ...

  8. 手把手教你学javaweb(五)文件的上传和下载

    javaweb项目文件的上传和下载 ​ 在进行文件的上传和下载之前,我们先把javaweb项目做一点点的改动,那就是将LoginServlet的跳转由原来的forward方式改为 redirect方式 ...

  9. 文件的上传和下载(一)

    文件的上传和下载(一) 一.文件上传概述 l  实现web开发中的文件上传功能,需完成如下二步操作: •    在web页面中添加上传输入项 •    在servlet中读取上传文件的数据,并保存到本 ...

最新文章

  1. 36张图详解网络基础知识
  2. 用上AI、用好AI!AiRiA研究院“普惠AI,芯向边缘”战略发布会圆满举行
  3. yum mysql mariadb 目录_CentOS用yum安装、配置MariaDB
  4. html限制最多字符串,css – 设置字符串换行中允许的最大换行量
  5. 一句话评论设计模式六大原则
  6. Eclipse 答疑:代码版权?如何更改 Eclipse 中注释块的 @author 版权信息?
  7. 58岁退休女士,想出去旅游却很难约到合适的伴,怎么办?
  8. 反射学习系列1-反射入门
  9. 实操教程|Pytorch - 弹性训练极简实现( 附源码)
  10. PoEdu - C++阶段班【Po学校】- 第1课
  11. 服务器位置设置,服务器部署位置
  12. ROS操作系统基本命令汇总
  13. iOS逆向之微信和支付宝修改步数 简洁无脑版
  14. android音频降噪webrtc
  15. JAVASCRIPT精彩200例
  16. TokenInsight 对话首席——隐私安全计算,价值几何?
  17. 搜索算法之爬山法总结和实现
  18. 小程序上传头像图片裁剪
  19. TikTok引领全球娱乐潮流,成为游戏出海营销新据点
  20. CreateJS 制作 H5 长图动画

热门文章

  1. QUIC协议原理详解
  2. 数学专业的考计算机博士,在数字中发现乐趣 过来人谈数学专业考研
  3. win7快捷键_?如何用U盘安装win7系统?
  4. 【操作系统原理】信号量及PV操作详解
  5. GAN综述及其在图像生成领域的应用(含原理、代码详解)
  6. MySQL测试工具之-TPCC(业界通用的压测工具)
  7. amoled和super amoled的区别 amoled和super amoled哪个更好
  8. Ubuntu下搭建第一台hadoop输入start-dfs.sh出现Permission denied (publickey,password)的问题
  9. 秋招小结:感受+面经(CV算法岗)
  10. 最受HR欢迎的简历五大特征