struts2中提供了对文件上传的支持,主要是通过File Upload Interceptor来实现的。这个拦截器有两个参数可以设置:maximumSize 和allowedTypes ,其中,maximumSize是允许上传的文件的最大容量,allowedTypes是允许的mimeType类型。
错误提示信息可以在i18n资源文件中指定,有以下三个key:
(1)struts.messages.error.uploading,文件上传出错时的提示信息
(2)struts.messages.error.file.too.large ,文件容量超出限制时的提示信息
(3)struts.messages.error.content.type.not.allowed ,文件mimeType类型不正确时的提示信息
1.如:在globleMessages_zh_CN.properties中,加入以下key-value:
struts.messages.error.uploading=上传文件失败
struts.messages.error.file.too.large=上传的文件太大
struts.messages.error.content.type.not.allowed=上传文件格式不正确
2.在action-mapping配置中:
xml 代码
1. <interceptor-ref name="fileUpload">
2. <param name="allowedTypes">
3. image/png,image/gif,image/jpeg
4. param>
5. <!-- 文件最大不能size:以byte为单位 -->
6. <param name="maximumSize ">
7. 102400
8. param>
9. interceptor-ref>
3.在JSP页面中:
(1)form表单中指定enctype="multipart/form-data":
xml 代码
1. <s:form name="certificate_form" onsubmit="return check()" enctype="multipart/form-data">
xml 代码
1. <s:file name="upload"><s:fielderror><s:param>uploads:param>s:fielderror>
4.在Action中定义以下三个属性:
java 代码
1. private File upload;
2. private String uploadFileName;
3. private String uploadContentType;
并生成相应的setter,getter方法。指定上传的文件名为upload
5.struts.properties:
struts.multipart.saveDir=D:\strutsTemp
#struts.multipart.parser
#struts.multipart.maxSize
struts.multipart.parser默认为Commons FileUpload。是处理MultipartRequest的parse implementation。在File upload时使用。
struts.multipart.maxSize默认为约2M。
6.多文件上传:
在JSP页面中加入多个同名的file input,如:
然后在action中,把upload定义为数组或者List,相应的FileName和ContentType业为数组或List。
分享到:
相关推荐
struts2文件上传例子(支持大文件)
Struts2 文件上传下载 多文件 单文件 实例;支持单个或多个文件的上传下载,并且自定义上传文件的大小和类型!!!
该属性指定Struts 2文件上传中整个请求内容允许的最大字节数. struts.custom.properties 该属性指定Struts 2应用加载用户自定义的属性文件,该自定义属性文件指定的属性不会覆盖struts.properties文件中指定的属性....
测试过了,好用的上传程序。java struts2 带进度显示的 效果不错 只支持单个文件
这是一个struts2实现的文件上传和下载例子,支持多文件上传,并且显示单文件上传的进度条。
COS这个文件上传组件可以说在几个开源的上传文件组件中性能是非常优秀的,上传速度很快(相比fileUpload,smart等组件),但在使用Struts2结合COS文件上传时要注意Struts2实现了自己的MultiPartRequest,这个过滤后的...
struts2文件上传,支持大文件上传。下载后导入Eclipse开发环境就可以运行
commons-fileupload-1.2.1.jar:文件上传组件,2.1.6版本后必须加入此文件 commons-io-1.3.2.jar freemarker-2.3.15.jar:Struts 2的UI标签的模板 ognl-2.7.3.jar :对象图导航语言(Object Graph Navigation ...
直接解压到tomcat的webapp目录下即可运行
包括Struts 2中配置文件的详细讲解、国际化与异常处理、数据类型的转换、数据的输入校验、Struts 2强大的标签库、Struts 2中文件的上传与下载、Struts 2对Ajax的支持、Struts 2与流行框架的整合,最后以3个实例由...
struts2+ajax+jquery异步批量上传超大文件,单文件最大支持2G,一次文件数量,文件大小都可设置。简单明了。绝对可用,稍微懂点的就可以修改为自己所用。你值得拥有! 我会分享给大家更多更好的东西,希望支持!
SWFUpload上传组件的一个完整的例子,后台由Struts2完成,有上传进度显示,可以多文件上传,如果你想使用SWFUpload组件但还不知道怎样使用,可以下载下来运行一下试试,看一下源码就知道了。
使用最新的struts2框架,可动态支持上传多个文件。
自己实现的ckeditor文件上传,上网找了各种资料,对代码做了极大的删减,通俗易懂,可作为CMS项目的参考,对浏览器的兼容性很好,支持已上传图片的缩略图展示效果,使用eclipse做出来的,很值得学习和参考!
传文件是很多Web程序都具有的功能。Struts2本身没有提供解析上传文件内容的功能,它使用第三方的文件上传组件提供对文件上传的支持。
本案例:struts文件上传/下载,支持多文件上传/下载。可供学习struts上传文件者,有所帮助
支持单文件和多文件上传,两种下载方式,Struts2
优化部分EXP在部分情况下被WAF拦截的问题,提高检测成功率,优化自定义上传路径exp,文件所在目录不存在时自动创建目录,防止文件因为目录不存在,导致上传失败。 2018-08-24: 增加S2-057 Struts 2.3 to 2.3.34,...
文件上传这个功能是很多网站都要有的,当然,Struts2对文件上传也进了支持,可以说,使用Struts实现文件上传是非常简单且方便的。
Struts2用到的核心jar包: ... 在Struts2中提倡使用 freemarker模板,但实际项目中使用jsp也很多。 commons-fileupload-1.2.1.jar 用于实现文件上传功能的jar包。 使用时候将5个Struts2的核心Jar包到WEB-INF/lib/下