SmartUpload組件是一款在進(jìn)行jsp開發(fā)時(shí)會(huì)經(jīng)常使用到的重要組件,這款軟件主要的作用就是幫助用戶解決下載文件時(shí)會(huì)出現(xiàn)的中文亂碼問題。并且SmartUpload.jar還可以用來對(duì)文件進(jìn)行控制和管理,從而幫助你濾掉不符合要求的文件。
SmartUpload.jar是一款java相關(guān)客戶端應(yīng)用,用戶評(píng)價(jià)還是不錯(cuò)的。smartupload近日推出了中文版版本,修復(fù)了若干bug,提升了軟件使用的流暢性,加上美觀的界面,jspSmartUpload.jar新版一定能給用戶帶來一個(gè)更好的體驗(yàn)。
1、能對(duì)上傳的文件在大小、類型等方面做出限制。如此可以濾掉不符合要求的文件。
2、在JSP文件中僅僅書寫三五行java代碼就可以搞定文件的上傳或下載,方便。
3、smartupload.jar包可以能全程控制上傳。使用jspSmartUpload組件提供的對(duì)象及其操作方法,可以獲得全部上傳文件的信息《包含文件名,大小,類型,擴(kuò)展名,文件數(shù)據(jù)等》,方便存取。
4、僅寫兩行代碼,就能將Web服務(wù)器變成文件服務(wù)器。不論文件在Web服務(wù)器的目錄下或在其它所有目錄下,都能使用jspSmartUpload進(jìn)行下載。
上傳
// 新建一個(gè)SmartUpload對(duì)象
SmartUpload su = new SmartUpload();
// 上傳初始化
su.initialize(pageContext);
// 限制每個(gè)上傳文件的最大長(zhǎng)度。
su.setMaxFileSize(10000);
// 限制總上傳數(shù)據(jù)的長(zhǎng)度。
su.setTotalMaxFileSize(20000);
// 設(shè)定允許上傳的文件(通過擴(kuò)展名限制),僅允許doc,txt文件。
su.setAllowedFilesList(doc,txt);
// 設(shè)定禁止上傳的文件(通過擴(kuò)展名限制),禁止上傳帶有exe,bat,
//jsp,htm,html擴(kuò)展名的文件和沒有擴(kuò)展名的文件。
su.setDeniedFilesList(exe,bat,jsp,htm,html,);
// 上傳文件
su.upload();
// 將上傳文件全部保存到指定目錄
int count = su.save(/upload);
下載
// 新建一個(gè)SmartUpload對(duì)象
SmartUpload su = new SmartUpload();
// 初始化
su.initialize(pageContext);
// 設(shè)定contentDisposition為null以禁止瀏覽器自動(dòng)打開文件,
//保證點(diǎn)擊鏈接后是下載文件。若不設(shè)定,則下載的文件擴(kuò)展名為
//doc時(shí),瀏覽器將自動(dòng)用word打開它。擴(kuò)展名為pdf時(shí),
//瀏覽器將用acrobat打開。
su.setContentDisposition(null);
問題一:jspSmartUpload上傳的文件保存到哪去了?
答案:默認(rèn)是在真正部署應(yīng)用服務(wù)器中,在哪個(gè)應(yīng)用下,
比如將項(xiàng)目部署在tomcat中,在jsp項(xiàng)目中運(yùn)行的,而最后保存的路徑su.save("upload");
那么文件會(huì)保存在tomcat部署jsp應(yīng)用下,upload文件夾中;
如果是通過eclipse,關(guān)聯(lián)的tomcat,在jsp項(xiàng)目中運(yùn)行,最后保存路徑為su.save("upload");
那么文件會(huì)保存在本機(jī)中,eclipse的workspace下.metadata.pluginsorg.eclipse.wst.server.coretmp0wtpwebappsjspupload下。
問題二:可不可以提供jspSmartUpload.jar的生成文件名的代碼模板?
答案:可以復(fù)制以下代碼,進(jìn)行部分修改即可。
1 package info.haowei.util;
2
3 import java.text.SimpleDateFormat;
4 import java.util.Date;
5 import java.util.Random;
6
7 public class IPTimeStamp {
8
9
10 private SimpleDateFormat sdf = null;
11 private String ip = null;
12
13
14 public IPTimeStamp(String ip) {
15 super();
16
17 this.ip = ip;
18 }
19
20
21 public IPTimeStamp() {
22 super();
23 }
24
25
26 public String getIPTimeRand(){
27 StringBuffer buf = new StringBuffer();
28 if(this.ip != null){
29 String s[] = this.ip.split(".");//根據(jù)ip以點(diǎn)分割將IP中的數(shù)字提取
30 for(int i = 0 ; i < s.length; i++){
31 buf.append(this.addZero(s[i], 3));//不夠三位數(shù)的補(bǔ)零
32 }
33 }
34 buf.append(this.getTimeStamp());
35 Random r = new Random();//再在結(jié)尾加上三個(gè)隨機(jī)數(shù)
36 for(int i = 0 ; i < 3 ; i++ ){
37 buf.append(r.nextInt(10));
38 }
39 return buf.toString();
40 }
41
42 private String addZero(String str, int len){
43
44 StringBuffer s = new StringBuffer();
45 s.append(str);
46 while(s.length()<len){
47 s.insert(0, 0);
48 }
49
50 return s.toString();
51 }
52
53
54 private String getTimeStamp(){//獲取時(shí)間戳
55 this.sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
56 return this.sdf.format(new Date());
57 }
58
59 public String getDate(){
60 this.sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
61 return this.sdf.format(new Date());
62 }
63 }
1贛教云教學(xué)通2.0-贛教云教學(xué)通2.0下載 v5......
2step7 microwin-西門子PLC S7......
3百度網(wǎng)盤清爽精簡(jiǎn)純凈版-網(wǎng)盤工具-百度網(wǎng)盤清爽精......
4360安全瀏覽器-瀏覽器-360安全瀏覽器下載 ......
5谷歌瀏覽器 XP版-谷歌瀏覽器 XP版-谷歌瀏覽......
6Kittenblock重慶教育專用版-機(jī)器人編程......
7seo外鏈助手(超級(jí)外鏈) -SEO外鏈優(yōu)化工具......
8Notepad3-記事本軟件-Notepad3下......
9小米運(yùn)動(dòng)刷步數(shù)神器-小米運(yùn)動(dòng)刷步數(shù)神器下載 v2......