国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JSP > 正文

jspSmartUpload上傳下載全攻略(二)

2024-09-05 00:19:25
字體:
來源:轉載
供稿:網友
  • 本文來源于網頁設計愛好者web開發社區http://www.html.org.cn收集整理,歡迎訪問。
  • 二、相關類說明篇

    ㈠ 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為允許上傳的文件的總長度。

    c.下載文件常用的方法

    1、setcontentdisposition

    作用:將數據追加到mime文件頭的content-disposition域。jspsmartupload組件會在返回下載的信息時自動填寫mime文件頭的content-disposition域,如果用戶需要添加額外信息,請用此方法。

    原型:public void setcontentdisposition(string contentdisposition)

    其中,contentdisposition為要添加的數據。如果contentdisposition為null,則組件將自動添加"attachment;",以表明將下載的文件作為附件,結果是ie瀏覽器將會提示另存文件,而不是自動打開這個文件(ie瀏覽器一般根據下載的文件擴展名決定執行什么操作,擴展名為doc的將用word程序打開,擴展名為pdf的將用acrobat程序打開,等等)。

    2、downloadfile

    作用:下載文件。

    原型:共有以下三個原型可用,第一個最常用,后兩個用于特殊情況下的文件下載(如更改內容類型,更改另存的文件名)。

    ① public void downloadfile(string sourcefilepathname)

    其中,sourcefilepathname為要下載的文件名(帶目錄的文件全名)

    ② public void downloadfile(string sourcefilepathname,string contenttype)

    其中,sourcefilepathname為要下載的文件名(帶目錄的文件全名),contenttype為內容類型(mime格式的文件類型信息,可被瀏覽器識別)。

    ③ public void downloadfile(string sourcefilepathname,string contenttype,string destfilename)

    其中,sourcefilepathname為要下載的文件名(帶目錄的文件全名),contenttype為內容類型(mime格式的文件類型信息,可被瀏覽器識別),destfilename為下載后默認的另存文件名。

     

    發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表
    主站蜘蛛池模板: 黑龙江省| 抚州市| 德清县| 兴安县| 井冈山市| 章丘市| 岐山县| 徐水县| 垫江县| 灵台县| 德州市| 疏勒县| 桐乡市| 额尔古纳市| 元朗区| 环江| 吕梁市| 富源县| 社旗县| 交城县| 安阳县| 麟游县| 屏东市| 高青县| 遂溪县| 万盛区| 古浪县| 武乡县| 无锡市| 富裕县| 禄丰县| 英德市| 永丰县| 阜新市| 峨边| 民勤县| 同仁县| 合作市| 西昌市| 鄂托克旗| 门源|