版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、文件上傳與下載全解析struts的上傳封裝的已經(jīng)非常完美了,首先我們來看一下頁面<s:form action ="" method= "p ost" enctype="mult ip art/form-data"><td height ="32" class="heder">上傳檔案</ td><td alig n ="left" bgcolor ="#FFFFFF" class ="mai n2&quo
2、t;><s:filen ame="docume ntFile" /></ td><td alig n ="cen ter">vinput type ="submit" value ="保 存" class ="butt on"on click ="retur n n extsubmit();"/></ td></s:form >主要關(guān)注的就是enctype="mult ip art/form-d
3、ata"<s:filen ame="docume ntFile"/>在action 中,我們來看privateStri ngdocume ntFileC ontentType;privateStri ngdocume ntFileFileName;privateFiledocume ntFile;publicStri nggetDocume ntFileC ontentTyp e()returndocume ntFileC ontentType;docume ntFileC ontentTypp ublicvoidsetDocume ntFileC o
4、ntentTyp e(Stri nge) docume ntFileC ontentType;src);p ublicStri nggetDocume ntFileFileName()returndocume ntFileFileName;p ublicvoidsetDocume ntFileFileName(Stri ng=docume ntFileFileName;p ublicFilegetDocume ntFile()retur ndocume ntFile;p ublicdocume ntFileFileName)void setDocume ntFile(File=docume n
5、tFile;docume ntFile) p rivatevoidcopy( Filesrc, File dst) InputStream in =null ;Out putStreamouttry innull ;new Bufferedl np utStream(new FileInputStream(outnew BufferedOutputStream(new FileOutputStream(dst);byte whilebuffer = new byte 1024;(buffer) >0)(buffer);();(); catch(Exce ptio ne) ();p ubl
6、ic String save()if (!("")archives");String folder().getReal Path("/new File(folder);File rootDirStri ng fileEx();Stri ng fileRealName(0,(".")+ (new Date().getTime()+fileEx;Stri ng fileNamefolder +""+ fileRealName;copy(documentFile,new File(fileName);retur n&qu
7、ot;success"docume ntFile;上傳后這三docume ntFileC ontentType;docume ntFileFileName;個東西會自動注入進(jìn)來,根據(jù)要求對文件名更改下,保存下好了,接著我們要提供下載,看看struts是怎么做的,網(wǎng)上關(guān)于這方面資料很少,就一個家伙把官方的showcase翻譯下,我再完整的走一遍流程在頁面中<s:url id ="url" action ="dow nl oad"><s:paramname="inputPath"> /archives/
8、<s:property value ="loc" /></ s:param ></s:url > <s:a href ="%url"> 下載 </s:a>在action 中imp ortimp ort imp ort imp ortimp ortinputP athnew String("ISO-8859-1"),"UTF-8");p ublicclassFileDow nl oadActi onimp leme ntsActio n ().setHead
9、er("C onten t-Dis po siti on","attachme nt;file name="+ np ublicInpu tStreamgetI npu tStream()throws Exce pti on retur n().getResourceAsStream(i nputP ath);p ublicString execute() throwsExcep ti on("/")+1, ();Stri ngfileNameew String("gb2312"),"iso-8859-1
10、");retur nSUCCESS;可以看到inputPath我們已經(jīng)寫在了 jsp的URL中了,contentType 這個東西也是大家比相應(yīng)的XML配置<act ionn ame="dow nl oad"class ="FileDow nl oadAct ion">vresultn ame="success"type ="stream"><param name="inputName"> inputStream </ param><p
11、aram n ame="bufferSize">4096</ p aram></ result ></ action >這里要注意,在action 中inputPath要轉(zhuǎn)換下new String("ISO-8859-1"),"UTF-8");另外在"attachme nt;setHeader("C onten t-Dis po siti on", file name="+ new Strin g("gb2312"),"is
12、o-8859-1");這一步也是非常重要的。注意:第一個轉(zhuǎn)換,"ISO-8859-1""UTF-8"UTF-8是根據(jù)你自己的編碼來處理"iso-8859-1"你就不要改變了,不管你是什么編碼,都第二個轉(zhuǎn)換,"gb2312"這么處理就是了,只要你的客戶用的是中文的操作系統(tǒng),呵呵大家在官方例子showcase里看到的是這樣的<act ionn ame="dow nl oad"class =""><param name="inputPath&q
13、uot;> /images/ </param>vresultn ame="success"type ="stream">p aram><p aram<p aram<p aramname="contentType"> image/gif </ param>name="inputName"> inputStream </ param>n ame="c onten tDis po siti on">file name="" </</ result ></ act
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度二零二五年度人工智能研發(fā)聘用合同詳盡版2篇
- 2025年度交通樞紐門衛(wèi)安全責(zé)任書3篇
- 2024年高端裝備制造業(yè)基地施工分包合同
- 2025年未實繳出資股份交易合同范本及風(fēng)險提示3篇
- 二零二四年度2024權(quán)合作合同范本:信息安全服務(wù)合作協(xié)議3篇
- 2025年度綠色屋頂綠化設(shè)計與植物養(yǎng)護(hù)服務(wù)合同4篇
- 2025年度智能工廠安防監(jiān)控系統(tǒng)集成合同范本2篇
- 二零二五版環(huán)保管家技術(shù)服務(wù)合同樣本:環(huán)保設(shè)施投資合作3篇
- 2025年涂裝勞務(wù)分包合同范本大全:涂裝工藝創(chuàng)新3篇
- 個人勞務(wù)合同書電子版
- 名表買賣合同協(xié)議書
- COCA20000詞匯音標(biāo)版表格
- 滬教版七年級數(shù)學(xué)上冊專題06圖形的運動(原卷版+解析)
- JTG-T-F20-2015公路路面基層施工技術(shù)細(xì)則
- 光伏發(fā)電站集中監(jiān)控系統(tǒng)通信及數(shù)據(jù)標(biāo)準(zhǔn)
- 建筑垃圾減排及資源化處置措施
- 2024年遼寧石化職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試題庫附答案
- 中西方校服文化差異研究
- 2024年一級建造師考試思維導(dǎo)圖-市政
- 高壓架空輸電線路反事故措施培訓(xùn)課件
- 隱私計算技術(shù)與數(shù)據(jù)安全保護(hù)
評論
0/150
提交評論