1.FileUpload拦截器介绍
FileUpload拦截器Struts2预置的拦截器
见struts-default.xml第134行
FileUpload拦截器被默认拦截器栈defaultStack引用,即我们不需要做任何配置,即可使用该拦截器
见struts-default.xml第275行
FileUpload拦截器可以用于文件上传
2.FileUpload拦截器上传文件步骤
首先,FileUpload拦截器将表单中提交的文件,以临时文件的形式保存到服务器临时路劲下。
之后,FileUpload拦截器将临时文件对象注入给Action。Action自主处理临时文件,如:将文件重新命名并复制到固定路径下。
FileUpload拦截器删除临时文件。
3.FileUpload拦截器使用步骤
导包
导入包commons-io.jar
Action
定义File类型属性(如some),接收拦截器注入的临时文件对象。
如果想获取原始文件名,要定义String类型属性,属性名为"File类型属性+FileName"(如someFileName),拦截器会自动给该属性注入原始文件名。
表单设置
必须满足method="post"
必须满足enctype="multipart/form-data"
4.注意事项
Struts2上传文件最大值默认限制为2097152B,即2M。
该设置被定义在struts2-core-2.1.8.jar中,包org.apache.struts2下的default.properties中。
struts.multipart.maxSize=2097152
可以在struts.xml中重置该默认值。
<constant name="struts.multipart.maxSize" value="5000000"/>