Struts实现多文件上传

Struts实现多文件上传

在显示开发中我们往往在一个页面要实现多个文件的同时上传,今天和大家分享Struts实现的多文件上传方法。

 

一、构建html页面

<form action="TestManyFileUploadAction" method="post" enctype="multipart/form-data">

文件1:<input type="file" name="file"><br>
文件2:<input type="file" name="file"><br>
文件3:<input type="file" name="file"><br>
<input type="submit" value="上传">

</form>


 

 

这里要注意 enctype类型

enctype="multipart/form-data"


 

二、程序实现

package com.struts.action;

import java.io.File;

import org.apache.commons.io.FileUtils;
import org.apache.struts2.ServletActionContext;

import com.opensymphony.xwork2.ActionSupport;

/*
 * 单个文件上传
 */
public class TestFileUploadAction extends ActionSupport
{

	private File file;

	// 得到文件名, 命名规则:文件名+"FileName"后缀。
	private String fileFileName;

	// 得到文件类型 , 固定后缀
	private String fileContentType;

	public String getFileContentType()
	{
		return fileContentType;
	}

	public void setFileContentType(String fileContentType)
	{
		this.fileContentType = fileContentType;
	}

	public File getFile()
	{
		return file;
	}

	public void setFile(File file)
	{
		this.file = file;
	}

	public String getFileFileName()
	{
		return fileFileName;
	}

	public void setFileFileName(String fileFileName)
	{
		this.fileFileName = fileFileName;
	}

	@Override
	public String execute() throws Exception
	{
		if (file != null)
		{
			try
			{
				String realPath = ServletActionContext.getServletContext()
						.getRealPath("/uploadfile");
				File saveFile = new File(realPath, fileFileName);
				if (!saveFile.getParentFile().exists())
				{
					saveFile.getParentFile().mkdirs();
				}
				FileUtils.copyFile(file, saveFile);
				System.out.println("路径:" + realPath);
				System.out.println("类型:" + fileContentType);
			}
			catch (Exception e)
			{
				System.out.println(e);
			}
		}
		return "success";
	}

}


 

 

 

三、编写配置文件

<action name="TestFileUploadAction" class="com.struts.action.TestFileUploadAction">
	<result name="success">/index.jsp</result>
</action>


四、观看效果

 

有三个文件我们上传测试

 

上传成功!

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值