Struts2之文件上傳(單文件/多文件)


<一>簡述:

Struts2的文件上傳其實也是通過攔截器來實現的,只是該攔截器定義為默認攔截器了,所以不用自己去手工配置,<interceptor name="fileUpload" class="org.apache.struts2.interceptor.FileUploadInterceptor"/>


<二>指定用戶上傳文件的大小,有兩種方式

1)默認是在default.properties 文件的 struts.multipart.maxSize=2097152  鍵值指定為2097152 也就是2M,通過計算 2097152/(1024*1024) = 2 M

那我們可以改變其默認值,只要在src目錄下,新建一個 struts.properties 文件,指定上傳大小 如下:


一次上傳只可以上傳10M,不管一次上傳多少個文件,按總和計算


2)在struts.xml文件中指定,如圖:


其實name就對應struts.properties的鍵,value對應 值


注意:如果即在struts.properties設定文件上傳大小,又在struts.xml 設定文件上傳大小,則struts.properties的優先級高於struts.xml,一般在一處指定上傳大小即可,推薦 struts.properties



<三>Struts2之單文件上傳


1.fileupload.jsp


2.具體處理上傳的 FileUpload.java


3.最終顯示結果的頁面,filedemo.jsp



<四>Struts2之多文件上傳

1.fileupload.jsp


兩個上傳文件的name屬性值要是一樣的,后台方便處理


2.具體處理上傳文件的FileUpload2.java

多文件上傳用集合的方式


3.用於顯示的界面filedemo.jsp


遍歷集合的方式,用struts2提供的標簽 iterator 可以實現

              <s:iterator value="file1FileName" id="f"> <!-- id是一個對象,目前是一個字符串集合  可任意命名-->
                                                 文件:<s:property value="#f"/> <br/>  
               <!-- 這里也可以調用方法  <s:property value="#f.toUpperCase()"/> -->

               toUpperCase()字符串的方法是把字母轉為大寫
              </s:iterator>


下載鏈接:

1)Servlet 文件上傳 ————  點擊打開鏈接

2)Struts2之下載  點擊打開鏈接







免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM