struts2 如何动态限制控制文件图片上传大小?1 配置好struts的上传文件限制大小是不能修改的,这个是所有上传文件都必须接受的物理限制,当然,根据需要你可以把这个值设大点
2 用户可以配置的值必须在程序中控制,也就是说有你要保存一个配置项(例如:可以保存在数据库中),用户可以去修改这个,修改时更新数据库就行了。
3 用户上传文件时,需要判断文件大小是否超过数据库中这个配置项,超过了的话就不会进行后面的上传行为了,对用户返回错误信息。
只需在<action></action>中加入拦截器引用fileUpload或者fileUploadStack
- <interceptor-ref name=”fileUpload”>
- <!– 配置允许上传的文件类型,多个用”,”分隔 –>
- <param name=”allowedTypes”>
- image/bmp,image/png,image/gif,image/jpeg,image/jpg
- ,image/x-png, image/pjpeg<o:p></o:p>
- </param>
- <!– 配置允许上传的文件大小,单位字节 –>
- <param name=”maximumSize”>102400</param>
- </interceptor-ref>
Struts2文件的上传和下载详细看手把手教你:
在struts.xml中配置,使用的是拦截器fileUploadStack
具体的配置如下:
- <constant name=”struts.multipart.maxSize” value=”1024000″></constant>
- <action name=”demo” class=”action.file.FileUploadAction”>
- <interceptor-ref name=”fileUploadStack”>
- <param name=”maximumSize”>1024000</param>
- <param name=”fileUpload.allowedTypes”>
- image/gif,image/png,image/bmp,image/pjpeg,image/jpg,image/jpeg
- </param>
- </interceptor-ref>
- <result name=”success” type=”httpheader”>
- <param name=”status”>200</param>
- </result>
- </action>