之前写过一篇文章,关于Struts2文件上传:http://www.cnblogs.com/lichenwei/p/3927964.html
现在来说下多文件上传,其实就把上传文件当成是一个数组去处理,和单文件上传是一样的思路,直接贴一段代码:
uploads.jsp
<%@ page language="java contentTypetext/html; charset=utf-8 pageEncodingutf-8"%> @ taglib prefixs uri/struts-tags" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <htmlheadmeta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"title>上传文件示例</bodys:actionerror/> s:fielderrors:form action="uploads.action" theme="simple" namespace="/" method="post" enctype="multipart/form-data"> s:file label="上传文件:" name="upload"></s:files:submit value="提交上传"s:submits:form>
UploadsAction.java
package com.lcw.struts2.upload; import java.io.File; java.io.IOException; org.apache.commons.io.FileUtils; org.apache.struts2.ServletActionContext; com.opensymphony.xwork2.ActionSupport; public class UploadsAction extends ActionSupport { // <s:file label="上传文件:" name="upload"></s:file> private File[] upload; 命名应该和上传页面name属性值保持一致 private String[] uploadContentType; 属性值+ContentType private String[] uploadFileName; 属性值+FielName void setUpload(File[] upload) { this.upload = upload; } setUploadContentType(String[] uploadContentType) { this.uploadContentType = uploadContentType; } setUploadFileName(String[] uploadFileName) { this.uploadFileName = uploadFileName; } public String upload() { for (int i = 0; i < upload.length; i++) { File destFile = new File(ServletActionContext.getServletContext() .getRealPath("/uploads") + "/" + uploadFileName[i]); try { 工具类 FileUtils.copyFile(upload[i],destFile); } catch (IOException e) { e.printStackTrace(); } } return SUCCESS; } }
struts.xml
<?xml version="1.0" encoding="UTF-8"?> DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"strutsconstant name="struts.devMode" value="true" /> ="struts.multipart.maxSize"="20000000000"constant> <!-- 全局国际化配置 --> ="struts.custom.i18n.resources"="messages"> package ="struts2test" extends="struts-default"> action ="uploads" class="com.lcw.struts2.upload.UploadsAction"> result ="success">/index.jspresult="input">/upload.jsp> >
来看下效果图:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。