这篇文章主要为大家详细介绍了struts2实现多文件上传,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了struts2实现多文件上传的具体代码,供大家参考,具体内容如下
首先搭建好struts2的开发环境,导入struts2需要的最少jar包
新建upload.jsp页面,注意一定要把表单的enctype设置成multipart/form-data
My JSP 'upload.jsp' starting page file: fileDesc:
file: fileDesc:
file: fileDesc:
新建一个UploadAction类,这个类主要有三个属性,并为这三个属性生成对应的set get方法
[File Name]ContentType : 保存要上传的文件类型
package cn.lfd.web.upload; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.InputStream; import java.io.OutputStream; import java.util.List; import org.apache.struts2.ServletActionContext; import com.opensymphony.xwork2.ActionSupport; /* * 多文件上传要把对应的属性类型都改为List集合,struts自动会把多个文件的数据封装到里面 */ public class UploadAction extends ActionSupport { private static final long serialVersionUID = 1L; private List file; private List fileContentType; private List fileFileName; private List fileDesc; public List getFile() { return file; } public void setFile(List file) { this.file = file; } public List getFileContentType() { return fileContentType; } public void setFileContentType(List fileContentType) { this.fileContentType = fileContentType; } public List getFileFileName() { return fileFileName; } public void setFileFileName(List fileFileName) { this.fileFileName = fileFileName; } public List getFileDesc() { return fileDesc; } public void setFileDesc(List fileDesc) { this.fileDesc = fileDesc; } @Override public String execute() throws Exception { //遍历文件集合,通过IO流把每一个上传的文件保存到upload文件夹下面 for(int i=0;i
然后在struts.xml配置文件中配置一下
200000text/html,text/xmltxt,html,xml/success.jsp/upload.jsp
在src目录下新建一个message.properties文件定制错误消息
struts.messages.error.uploading - 文件不能被上传
struts.messages.error.file.too.large - 文件超出大小
struts.messages.error.content.type.not.allowed - 文件类型不合法
struts.messages.error.file.extension.not.allowed - 文件扩展名不合法
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。