在struts配置文件中配置:
配置在package 外:
<!--更改struts默认文件大小的配置 -->
<constant name="struts.multipart.maxSize" value="1000000000" />
<!-- 这个是更改struts默认文件大小的配置,默认为2M-->
配置在action里:
<!--上传音乐 -->
<action name="uploadings" class="uploadingMusic">
<result>/uploadMusic.jsp</result>
<result name="error">/error.jsp</result>
<result name="input">/error.jsp</result>
<interceptor-ref name="fileUpload">
<!-- image/jpg,image/gif,image/jpeg,application/pdf,audio/mpeg,audio/mpeg,video/mpeg,video/mpeg,video/mpeg,video/mpeg -->
<!-- <param name="allowedTypes">*</param> -->
<param name="allowedExtensions">mp3,mp4</param> //设置上传类型
<param name="maximumSize">2048000000</param> // 设置上传大小
</interceptor-ref>
<interceptor-ref name="defaultStack"></interceptor-ref> //必须加上默认拦截,并加在后面
</action>
对于这两个拦截大小配置参考网上所说:
struts2中文件上传的二个限制,一个是struts.multipart.maxSize,如果不设置,struts2 的核心包下的default.properties文件里有默认的大小设置 struts.multipart.maxSize=2097152,即2M. 这是struts2文件上传的第一道关。
第二道关是inteceptor中的maximumSize. 当真实的文件大小能通过第一道关时.针对不同的action中配置的inteceptor,maximumSize才能发挥相应 的拦截作用.