1. 程式人生 > >Struts2的檔案上傳和下載(2)限制檔案的大小和型別

Struts2的檔案上傳和下載(2)限制檔案的大小和型別

要在struts.xml中對Action進行配置,要在Action配置中加入檔案過濾攔截器fileUploadstruts.xml的配置資訊如下所示:

<package name="struts2" namespace="/" extends="struts-default">
 <action name="Xxx" class="cn.itcast.Xxx">
    <result name="success">/result.jsp</result>  <!--返回結果-->
    <interceptor-ref name="defaultStack"><!--引用攔截器-->
      <!--限制上傳檔案最大值為4M -->
      <param name="fileUpload.maximumSize">4194304</param> 
       <!--限制上傳檔案的副檔名 -->           
      <param name="fileUpload.allowedExtensions">
         .txt,.doc,.jpg
      </param>
      <!--限制上傳檔案的型別 -->
      <param name="fileUpload.allowedTypes">
         text/plain,application/msword,image/jpeg
      </param>
    </interceptor-ref>
 </action>
</package>

在實際開發中,除了完成上傳功能,通常,還需要對檔案的大小和型別進行限制。在Struts2中,可以通過上傳攔截器FileUpload來實現該功能。在FileUpload中,有三個屬性可以設定,具體如下:

maximumSize:上傳檔案的最大長度(以位元組為單位), 預設值為2MB

allowedTypes:允許上傳檔案的型別,各型別之間以逗號分隔。

allowedExtensions:允許上傳副檔名,各副檔名之間以逗號分隔