struts2文件上传下载说明
IBM Software Group
®
IBM Software Group
第八章:Struts 2文件上传下载主讲: 主讲:刘雷
© 2008 IBM Corporation
struts2文件上传下载说明
IBM Software Group
本章内容Struts2单文件上传 Struts2多文件上传 Struts2文件下载
IBM Software Group
struts2文件上传下载说明
IBM Software Group
表单enctype属性application/x-www-form-urlencoded: 默认值,只要是能输出网页的服务器端环境都可以 multipart/form-data: 上传二进制数据,只有使用multipart/form-data ,才能完整的传递文件数 据,进行上传操作
IBM Software Group
struts2文件上传下载说明
IBM Software Group
两个上传框架Common-FileUplaod:apache的开源项目,由jakarta项目组开发。 功能强大,简单易用,可以实现一次上传一个或多个文件,并可限制文件大小。 COS:O‘Reilly公司开发的开源框架 会不定期的增加一些新功能。
IBM Software Group
struts2文件上传下载说明
IBM Software Group
下载Common-FileUplaod框架下载Common-FileUplaod框架地址: /commons/fileupload/ 下载commons-fileupload-1.2-bin.zip文件 解压后得到commons-fileupload-1.2.jar /commons/io/ 下载commons-io-1.3.2-bin.zip文件 解压后得到commons-io-1.3.2.jar
IBM Software Group
struts2文件上传下载说明
IBM Software Group
基于表单的文件上传IBM Software Group
注意:上面是基于表单的上传,在form标签中有一个必须的属性值设置:enctype. 如果要做文件上传功能必须将enctype值设为multipart/form-data. enctype multipart/form-data. 此外,文件上传还需要二个JAR文件支持:
struts2文件上传下载说明
IBM Software Group
文件上传页面upload.jsp<form action="upload.action" method="post" enctype="multipart/form-data"> 文件:<input type="file" name="myFile"> <input type="submit" value="提交"> </form> 或者 <%@ taglib uri="/struts-tags" prefix="s" %> <s:actionerror/> <s:form action="upload" method="post" enctype="multipart/form-data"> <s:file name="file" label="选择上传的文件"/> <s:submit value="上传"/> </s:form>
IBM Software Group
struts2文件上传下载说明
IBM Software Group
上传Action类UploadActionIBM Software Group
struts2文件上传下载说明
IBM Software Group
上传Action类UploadActionIBM Software Group
struts2文件上传下载说明
IBM Software Group
Struts.xmlIBM Software Group
struts2文件上传下载说明
IBM Software Group
处理错误提示以中文显示IBM Software Group
如果上传文件大于2M时,在页面上就出现了一堆英文的错误信息,大致是:the request was rejected because its size....exceeds the configured maximum...并且在fieUpload中将来自 MultiPartRequestWrapper型request对象的错误信息给加到了Action的错误中。 这时候,你在ApplicationResources.properties中自定义的上传文件过大的错误信息根本不起作用。原 因就如书上所言,在底层commons-fileupload组件中就把异常给抛出来了文件根本没被上传,所以到了 fileUpload拦截器时,根据取不到文件,当然也就没法对文件的类型和大小进行判断了。
struts2文件上传下载说明
IBM Software Group
注意IBM Software Group
struts2文件上传下载说明
I
BM Software Group
解决页面the request was rejected because its size错误提示IBM Software Group
struts2文件上传下载说明
IBM Software Group
使用数组同时上传多个文件IBM Software Group
struts2文件上传下载说明
IBM Software Group
使用数组同时上传多个文件IBM Software Group
struts2文件上传下载说明
IBM Software Group
使用数组同时上传多个文件IBM Software Group
struts2文件上传下载说明
IBM Software Group
使用数组同时上传多个文件IBM Software Group
struts2文件上传下载说明
IBM Software Group
使用数组同时上传多个文件IBM Software Group
struts2文件上传下载说明
IBM Software Group
使用list同时上传多个文件IBM Software Group
struts2文件上传下载说明
IBM Software Group
使用list同时上传多个文件IBM Software Group
struts2文件上传下载说明
IBM Software Group
使用list同时上传多个文件IBM Software Group