smartupload java_java servlet通过SmartUpload开发文件批量上传、批量下载源码分享
前幾天用基礎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开发文件批量上传、批量下载源码分享的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++四位数ABCD
- 下一篇: java编程10以内随机数字乘除,Jav