第一步:首先创建一个多文件上传的页面

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>多文件上传</title>
</head>
<body>
<h1>多文件上传</h1> <br><br>
<form action="/Struts2-day02pm/upload/multi_upload.action" method="post" enctype="multipart/form-data">
文件上传2:<br><br>
<input type="file" name="oneFiles"><br><br>
<input type="file" name="oneFiles"><br><br>
<input type="file" name="oneFiles"><br><br>
<input type="submit" value="开始多文件上传">
</form>
</body>

第二步:创建多文件上传的请求处理类MultiUploadAction继承BaseAction(BaseAction代码见单文件上传)

public class MultiUploadAction extends BaseAction {

    private static final long serialVersionUID = -4445894434193884175L;

    private File[] oneFiles;
private String[] oneFilesFileName;
private String[] oneFilesContentType; private HttpServletRequest request; @Override
public void setServletRequest(HttpServletRequest request) {
this.request = request;
} @Override
public String execute() throws Exception {
String uploadPath = request.getServletContext().getRealPath("upload"); for (int i = 0; i < oneFiles.length; i++) { File file = new File(uploadPath, oneFilesFileName[i]);//拼接文件的存放路径和存放文件的真实名称
FileUtils.copyFile(oneFiles[i], file);//将临时文件复制到上面这个路径
}
return SUCCESS;
} public File[] getOneFiles() {
return oneFiles;
}
public void setOneFiles(File[] oneFiles) {
this.oneFiles = oneFiles;
}
public String[] getOneFilesFileName() {
return oneFilesFileName;
}
public void setOneFilesFileName(String[] oneFilesFileName) {
this.oneFilesFileName = oneFilesFileName;
}
public String[] getOneFilesContentType() {
return oneFilesContentType;
}
public void setOneFilesContentType(String[] oneFilesContentType) {
this.oneFilesContentType = oneFilesContentType;
}
public HttpServletRequest getRequest() {
return request;
}
public void setRequest(HttpServletRequest request) {
this.request = request;
}
}

第三步:配置struts.xml配置文件

<struts>

    <package name="upload-default" namespace="/upload" extends="struts-default">

        <action name="multi_upload" class="com.struts2.day02pm.action.MultiUploadAction">
<result>/WEB-INF/jsp/multi_upload_ok.jsp</result>
</action>
</package> </struts>

第四步:前台页面测试上传文件

Struts2多文件上传的更多相关文章

  1. struts2的文件上传

    在做B/S系统时,通常会涉及到上传文件和下载文件,在没接struts2框架之前,我们都是使用apache下面的commons子项目的FileUpload组件来进行文件的上传,但是那样做的话,代码看起来 ...

  2. jsp\struts1.2\struts2 中文件上传(转)

    jsp\struts1.2\struts2 中文件上传 a.在jsp中简单利用Commons-fileupload组件实现 b.在struts1.2中实现c.在sturts2中实现现在把Code与大家 ...

  3. Struts2+Uploadify文件上传使用详解

    Uploadify是JQuery的一个上传插件,实现的效果非常不错,带进度显示.不过官方提供的实例是php版本的,本文将详细介绍Uploadify在java中的使用,您也可以点击下面的链接进行演示或下 ...

  4. Struts2 多文件上传

    Struts2多文件上传只需要将 单文件上传中的File变成File[]  即可,上篇文章:单文件上传 <form action="${pageContext.request.cont ...

  5. Struts2图片文件上传,判断图片格式和图片大小

    1. 配置Struts2能够上传的最大文件大小 使用Struts2进行文件上传的时候,Struts2默认文件大小最大为2MB,如果要传大一点的文件,就需要修改struts.xml配置文件,重新设置能够 ...

  6. Struts2实现文件上传下载功能(批量上传)

    今天来发布一个使用Struts2上传下载的项目, struts2为文件上传下载提供了好的实现机制, 首先,可以先看一下我的项目截图 关于需要使用的jar包,需要用到commons-fileupload ...

  7. Struts2实现文件上传(四)

    Struts2实现文件上传 配置文件struts.xml <!-- /* * $Id: struts.xml 1364077 2012-07-21 12:57:02Z lukaszlenart ...

  8. Struts2实现文件上传(三)

    Struts2实现文件上传 配置文件web.xml <?xml version="1.0" encoding="UTF-8"?> <web-a ...

  9. Struts2实现文件上传(二)

    Struts2实现文件上传 文件上传页面 file.jsp: <%@ page language="java" import="java.util.*" ...

  10. Struts2实现文件上传(一)

    Struts2实现文件上传 文件上传成功后结果页面 result.jsp: <%@ page language="java" import="java.util.* ...

随机推荐

  1. MVC和Web API 过滤器Filter [转]

    ASP.NET MVC 支持以下类型的操作筛选器: ·        授权筛选器.这些筛选器用于实现IAuthorizationFilter和做出关于是否执行操作方法(如执行身份验证或验证请求的属性) ...

  2. C#4.0中var和dynamic的区别

    1. var表示“变量的类型是在编译时决定的”, var让你在初始化变量时少输入一些字,编译器会根据右值来推断出变量的类型, var只能用于局部变量的定义,你不能把类的属性定义成 var,也不能把方法 ...

  3. [leetcode]重建二叉树(先序和终须) 中序遍和后续

    分割后长度相等,就是参数麻烦,p,先序的起始点, ib,ie 终须的结束和开始. /** * Definition for binary tree * public class TreeNode { ...

  4. Poj 3683-Priest John's Busiest Day 2-sat,拓扑排序

    Priest John's Busiest Day Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 8872   Accept ...

  5. 每隔一段时间执行一次函数。window.setTimeout

    timer2 = window.setTimeout("showTaxi()", 30000);//30秒从后台获取一次数据,显示在地图上. 原来试过  setInterval . ...

  6. 南阳acm奇偶数分离

    这道题的特殊要求是要先先限定了测试数据的组数,所以多加一条循环语句.下面是已通过的代码: #include<stdio.h>   main() {         int n,m,i,j; ...

  7. webview改变网页宽度

    - (void)webViewDidFinishLoad:(UIWebView *)webView { //修改服务器页面的meta的值 NSString *meta = [NSString stri ...

  8. 使用.htaccess实现apache URL重定向

    一.什么是URL重定向? URL重定向(URL redirection,或称网址重定向或网域名称转址),是指当使用者浏览某个网址时,将他导向到另一个网址的技术. 二.URL重定向怎么配置? 1)首先需 ...

  9. 大众点评的大数据实践-CSDN.NET

    大众点评的大数据实践-CSDN.NET 大众点评的大数据实践 爬虫工程师成大数据时代的"宠儿" - 杭州新闻中心 - 杭州网 爬虫工程师成大数据时代的"宠儿"

  10. 天涯html&css基础框架

    html申明 对ie6-8在html中添加no-css3这个class和各个版本的class,对ie7以下添加lte7这个class,然后根据我们目前使用浏览器的比例,把第一的ie6放在判断第一位. ...