struts2修改文件上傳的大小

轉自:https://www.cnblogs.com/yaobolove/p/5241988.html

那天寫了一個web上傳圖片的程序,明明修改了上傳文件的默認值(2M),可就是一直沒有起作用

複製代碼
<action name="fileupload" class="uploasAction">
            <interceptor-ref name="defaultStack">
                <param name="fileUpload.allowedTypes">
                    image/png,image/gif,image/jpeg,image/jpg,image/x-png
                </param>
                <param name="fileUpload.maximumSize">102400000</param>
        </interceptor-ref>
</action>
複製代碼

 

原來上網查了一下,還要加入這個東西

在struts.xml中加入  <constant name="struts.multipart.maxSize" value="10000000"/> ,大約10M

才能使攔截器起到作用

  struts.multipart.maxSize掌控整個項目所上傳文件的最大的Size
  struts.multipart.maxSize和fileUpload攔截器的maximumSize屬性分工不同,總結如下:


  1.struts.multipart.maxSize掌控整個項目所上傳文件的最大的Size。超過了這個size,後臺報錯,程序處理不了如此大的文件。fielderror裏面會有如下的提示:
    the request was rejected because its size (16272982) exceeds the configured maximum (9000000)
  2.fileUpload攔截器的maximumSize屬性必須小於struts.multipart.maxSize的值。
    struts.multipart.maxSize默認2M,當maximumSize大於2M時,必須設置struts.multipart.maxSize的值大於maximumSize。
  3.當上傳的文件大於struts.multipart.maxSize時,系統報錯
    當上傳的文件在struts.multipart.maxSize和maximumSize之間時,系統提示:
    File too large: file "MSF的概念.ppt" "upload__5133e516_129ce85285f__7ffa_00000005.tmp" 6007104
    當上傳的文件小於maximumSize,上傳成功。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章