Struts2的檔案上傳和下載(2)限制檔案的大小和型別
阿新 • • 發佈:2018-11-29
要在struts.xml中對Action進行配置,要在Action配置中加入檔案過濾攔截器fileUpload。struts.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:允許上傳副檔名,各副檔名之間以逗號分隔