亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JSP > 正文

jspSmartUpload上傳下載全攻略1

2024-09-05 00:20:30
字體:
來源:轉載
供稿:網友

一、安裝篇

  jspsmartupload是由www.jspsmart.com網站開發的一個可免費使用的全功能的文件上傳下載組件,適于嵌入執行上傳下載操作的jsp文件中。該組件有以下幾個特點:

1、使用簡單。在jsp文件中僅僅書寫三五行java代碼就可以搞定文件的上傳或下載,方便。

2、能全程控制上傳。利用jspsmartupload組件提供的對象及其操作方法,可以獲得全部上傳文件的信息(包括文件名,大小,類型,擴展名,文件數據等),方便存取。

3、能對上傳的文件在大小、類型等方面做出限制。如此可以濾掉不符合要求的文件。

4、下載靈活。僅寫兩行代碼,就能把web服務器變成文件服務器。不管文件在web服務器的目錄下或在其它任何目錄下,都可以利用jspsmartupload進行下載。

5、能將文件上傳到數據庫中,也能將數據庫中的數據下載下來。這種功能針對的是mysql數據庫,因為不具有通用性,所以本文不準備舉例介紹這種用法。

  jspsmartupload組件可以從www.jspsmart.com網站上自由下載,壓縮包的名字是jspsmartupload.zip。下載后,用winzip或winrar將其解壓到tomcat的webapps目錄下(本文以tomcat服務器為例進行介紹)。解壓后,將webapps/jspsmartupload目錄下的子目錄web-inf名字改為全大寫的web-inf,這樣一改jspsmartupload類才能使用。因為tomcat對文件名大小寫敏感,它要求web應用程序相關的類所在目錄為web-inf,且必須是大寫。接著重新啟動tomcat,這樣就可以在jsp文件中使用jspsmartupload組件了。

  注意,按上述方法安裝后,只有webapps/jspsmartupload目錄下的程序可以使用jspsmartupload組件,如果想讓tomcat服務器的所有web應用程序都能用它,必須做如下工作:

1.進入命令行狀態,將目錄切換到tomcat的webapps/jspsmartupload/web-inf目錄下。

2.運行jar打包命令:jar cvf jspsmartupload.jar com

(也可以打開資源管理器,切換到當前目錄,用winzip將com目錄下的所有文件壓縮成jspsmartupload.zip,然后將jspsmartupload.zip換名為jspsmartupload.jar文件即可。)

3.將jspsmartupload.jar拷貝到tomcat的shared/lib目錄下。

二、相關類說明篇

㈠ file類

  這個類包裝了一個上傳文件的所有信息。通過它,可以得到上傳文件的文件名、文件大小、擴展名、文件數據等信息。

  file類主要提供以下方法:

1、saveas作用:將文件換名另存。

原型:

public void saveas(java.lang.string destfilepathname)



public void saveas(java.lang.string destfilepathname, int optionsaveas)

其中,destfilepathname是另存的文件名,optionsaveas是另存的選項,該選項有三個值,分別是saveas_physical,saveas_virtual,saveas_auto。saveas_physical表明以操作系統的根目錄為文件根目錄另存文件,saveas_virtual表明以web應用程序的根目錄為文件根目錄另存文件,saveas_auto則表示讓組件決定,當web應用程序的根目錄存在另存文件的目錄時,它會選擇saveas_virtual,否則會選擇saveas_physical。

例如,saveas("/upload/sample.zip",saveas_physical)執行后若web服務器安裝在c盤,則另存的文件名實際是c:/upload/sample.zip。而saveas("/upload/sample.zip",saveas_virtual)執行后若web應用程序的根目錄是webapps/jspsmartupload,則另存的文件名實際是webapps/jspsmartupload/upload/sample.zip。saveas("/upload/sample.zip",saveas_auto)執行時若web應用程序根目錄下存在upload目錄,則其效果同saveas("/upload/sample.zip",saveas_virtual),否則同saveas("/upload/sample.zip",saveas_physical)。

建議:對于web程序的開發來說,最好使用saveas_virtual,以便移植。

2、ismissing

作用:這個方法用于判斷用戶是否選擇了文件,也即對應的表單項是否有值。選擇了文件時,它返回false。未選文件時,它返回true。

原型:public boolean ismissing()

3、getfieldname

作用:取html表單中對應于此上傳文件的表單項的名字。

原型:public string getfieldname()

4、getfilename

作用:取文件名(不含目錄信息)

原型:public string getfilename()

5、getfilepathname

作用:取文件全名(帶目錄)

原型:public string getfilepathname

6、getfileext

作用:取文件擴展名(后綴)

原型:public string getfileext()

7、getsize

作用:取文件長度(以字節計)

原型:public int getsize()

8、getbinarydata

作用:取文件數據中指定位移處的一個字節,用于檢測文件等處理。

原型:public byte getbinarydata(int index)。其中,index表示位移,其值在0到getsize()-1之間。

㈡ files類

  這個類表示所有上傳文件的集合,通過它可以得到上傳文件的數目、大小等信息。有以下方法:

1、getcount

作用:取得上傳文件的數目。

原型:public int getcount()

2、getfile

作用:取得指定位移處的文件對象file(這是com.jspsmart.upload.file,不是java.io.file,注意區分)。

原型:public file getfile(int index)。其中,index為指定位移,其值在0到getcount()-1之間。

3、getsize

作用:取得上傳文件的總長度,可用于限制一次性上傳的數據量大小。

原型:public long getsize()

4、getcollection

作用:將所有上傳文件對象以collection的形式返回,以便其它應用程序引用,瀏覽上傳文件信息。

原型:public collection getcollection()

5、getenumeration

作用:將所有上傳文件對象以enumeration(枚舉)的形式返回,以便其它應用程序瀏覽上傳文件信息。

原型:public enumeration getenumeration()

㈢ request類

  這個類的功能等同于jsp內置的對象request。只所以提供這個類,是因為對于文件上傳表單,通過request對象無法獲得表單項的值,必須通過jspsmartupload組件提供的request對象來獲取。該類提供如下方法:

1、getparameter

作用:獲取指定參數之值。當參數不存在時,返回值為null。

原型:public string getparameter(string name)。其中,name為參數的名字。

2、getparametervalues

作用:當一個參數可以有多個值時,用此方法來取其值。它返回的是一個字符串數組。當參數不存在時,返回值為null。

原型:public string[] getparametervalues(string name)。其中,name為參數的名字。

3、getparameternames

作用:取得request對象中所有參數的名字,用于遍歷所有參數。它返回的是一個枚舉型的對象。

原型:public enumeration getparameternames()

㈣ smartupload類這個類完成上傳下載工作。

a.上傳與下載共用的方法:

只有一個:initialize。

作用:執行上傳下載的初始化工作,必須第一個執行。

原型:有多個,主要使用下面這個:

public final void initialize(javax.servlet.jsp.pagecontext pagecontext)

其中,pagecontext為jsp頁面內置對象(頁面上下文)。

b.上傳文件使用的方法:

1、upload

作用:上傳文件數據。對于上傳操作,第一步執行initialize方法,第二步就要執行這個方法。

原型:public void upload()

2、save

作用:將全部上傳文件保存到指定目錄下,并返回保存的文件個數。

原型:public int save(string destpathname)

和public int save(string destpathname,int option)

其中,destpathname為文件保存目錄,option為保存選項,它有三個值,分別是save_physical,save_virtual和save_auto。(同file類的saveas方法的選項之值類似)save_physical指示組件將文件保存到以操作系統根目錄為文件根目錄的目錄下,save_virtual指示組件將文件保存到以web應用程序根目錄為文件根目錄的目錄下,而save_auto則表示由組件自動選擇。

注:save(destpathname)作用等同于save(destpathname,save_auto)。

3、getsize

作用:取上傳文件數據的總長度

原型:public int getsize()

4、getfiles

作用:取全部上傳文件,以files對象形式返回,可以利用files類的操作方法來獲得上傳文件的數目等信息。

原型:public files getfiles()

5、getrequest

作用:取得request對象,以便由此對象獲得上傳表單參數之值。

原型:public request getrequest()

6、setallowedfileslist

作用:設定允許上傳帶有指定擴展名的文件,當上傳過程中有文件名不允許時,組件將拋出異常。

原型:public void setallowedfileslist(string allowedfileslist)

其中,allowedfileslist為允許上傳的文件擴展名列表,各個擴展名之間以逗號分隔。如果想允許上傳那些沒有擴展名的文件,可以用兩個逗號表示。例如:setallowedfileslist("doc,txt,,")將允許上傳帶doc和txt擴展名的文件以及沒有擴展名的文件。

7、setdeniedfileslist

作用:用于限制上傳那些帶有指定擴展名的文件。若有文件擴展名被限制,則上傳時組件將拋出異常。

原型:public void setdeniedfileslist(string deniedfileslist)

其中,deniedfileslist為禁止上傳的文件擴展名列表,各個擴展名之間以逗號分隔。如果想禁止上傳那些沒有擴展名的文件,可以用兩個逗號來表示。例如:setdeniedfileslist("exe,bat,,")將禁止上傳帶exe和bat擴展名的文件以及沒有擴展名的文件。

8、setmaxfilesize

作用:設定每個文件允許上傳的最大長度。

原型:public void setmaxfilesize(long maxfilesize)

其中,maxfilesize為為每個文件允許上傳的最大長度,當文件超出此長度時,將不被上傳。

9、settotalmaxfilesize

作用:設定允許上傳的文件的總長度,用于限制一次性上傳的數據量大小。

原型:public void settotalmaxfilesize(long totalmaxfilesize)

其中,totalmaxfilesize為允許上傳的文件的總長度。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产91精品在线播放| 色噜噜狠狠狠综合曰曰曰88av| 俺去亚洲欧洲欧美日韩| 91精品免费久久久久久久久| 亚洲欧美日韩图片| 亚洲第一中文字幕在线观看| 欧美亚洲国产精品| 中文字幕不卡在线视频极品| 福利视频一区二区| 日韩国产欧美区| 91免费视频网站| 亚州国产精品久久久| 色狠狠av一区二区三区香蕉蜜桃| 日本一区二区在线免费播放| 精品欧美国产一区二区三区| 一区二区三区久久精品| 92看片淫黄大片欧美看国产片| 久久国产精品免费视频| 亚洲精品一区二区久| 欧美日韩另类字幕中文| 激情久久av一区av二区av三区| 亚洲天堂男人天堂女人天堂| 日韩中文字幕久久| 欧美乱妇40p| 亚洲综合最新在线| 欧美激情xxxx| 日韩美女写真福利在线观看| 日本亚洲欧洲色α| 少妇精69xxtheporn| 国产精品7m视频| 91亚洲精华国产精华| 国产乱人伦真实精品视频| 51午夜精品视频| 国产一区二区三区毛片| 久久夜精品香蕉| 亚洲在线免费视频| 欧美中文在线视频| 日本欧美一级片| 91精品久久久久久综合乱菊| 日本成人黄色片| 中文字幕综合在线| 亚洲网站在线观看| 欧美性猛交xxxxx水多| 亚洲成人激情小说| 91久久久亚洲精品| 韩国精品美女www爽爽爽视频| 日韩在线中文字幕| 精品国产欧美成人夜夜嗨| 欧美性少妇18aaaa视频| 亚州国产精品久久久| 中文精品99久久国产香蕉| 亚洲丝袜在线视频| 57pao国产成人免费| 亚洲二区在线播放视频| 久久综合88中文色鬼| 国模视频一区二区三区| 在线观看视频亚洲| 精品福利在线视频| 日韩精品视频中文在线观看| 91精品国产91| 国产精品视频区| 国产精品精品视频一区二区三区| 亚洲日本aⅴ片在线观看香蕉| 久久综合九色九九| 中文字幕免费精品一区| 蜜臀久久99精品久久久无需会员| 久热国产精品视频| 国产成人福利网站| 欧美电影在线免费观看网站| 欧美高清不卡在线| 亚洲国产精品一区二区久| 亚洲天堂影视av| 亚洲娇小xxxx欧美娇小| 日av在线播放中文不卡| 亚洲第五色综合网| 国产一区二区欧美日韩| 久久人人爽人人爽人人片亚洲| 亚洲天堂成人在线视频| 久久成人综合视频| 久操成人在线视频| 国产精品av在线播放| 亚洲第一视频在线观看| 欧美高清视频在线观看| 精品久久久久久久久国产字幕| 成人情趣片在线观看免费| 国产精品99久久99久久久二8| 亚洲最大的免费| 一二美女精品欧洲| 日本久久久久久| 日韩成人av一区| 国内精品美女av在线播放| 97碰在线观看| 欧美激情免费在线| 97在线看免费观看视频在线观看| 2024亚洲男人天堂| 国产精品久久久久久久久久免费| 91精品久久久久久久久| 日韩电影中文字幕| 羞羞色国产精品| 91中文字幕在线观看| 亚洲综合日韩中文字幕v在线| 精品国产网站地址| 日本电影亚洲天堂| 国产亚洲欧洲黄色| 欧美日韩在线视频一区| 26uuu另类亚洲欧美日本老年| 成人免费黄色网| 亚洲色图欧美制服丝袜另类第一页| 欧美专区国产专区| 欧美午夜宅男影院在线观看| 日日骚av一区| 国产日产欧美a一级在线| 中文字幕亚洲字幕| 亚洲综合小说区| 日韩在线观看免费av| 日韩高清不卡av| 久久艹在线视频| 国产精品69精品一区二区三区| 色久欧美在线视频观看| 成人性生交xxxxx网站| 久久精品99久久久久久久久| 国产在线拍偷自揄拍精品| 欧美夜福利tv在线| 国产91精品黑色丝袜高跟鞋| 亚洲一区二区三区在线免费观看| 91精品国产网站| 日韩电影免费在线观看| 色悠久久久久综合先锋影音下载| 精品国产乱码久久久久久婷婷| 午夜精品99久久免费| 高潮白浆女日韩av免费看| 国产精品一区二区久久国产| 国产成人福利夜色影视| 亚洲xxxx视频| 色老头一区二区三区| 92版电视剧仙鹤神针在线观看| 欧美高清在线视频观看不卡| 久久久久久国产| 日韩免费观看在线观看| 欧美国产精品日韩| 26uuu亚洲国产精品| 91香蕉国产在线观看| 久久青草精品视频免费观看| 国产精品免费久久久久久| 国产日韩在线一区| 一区二区三区视频免费在线观看| 国内精品久久久久久久| 日韩av在线免费看| 亚洲片av在线| 亚洲精品免费在线视频| 91精品国产综合久久久久久久久| 欧美激情按摩在线| 国产日韩综合一区二区性色av| 97视频在线观看免费高清完整版在线观看| 国产成人精品在线| 丝袜美腿亚洲一区二区| 亚洲美女性生活视频| 欧美久久精品一级黑人c片| 91国内揄拍国内精品对白| 亚洲国产精品久久91精品| 最近日韩中文字幕中文| 国产精品com| 日韩女优在线播放| 亚洲第一视频网站|