jsp页面
<form action="${pageContext.request.contextPath}/user/fileUpload.action"
//文件上传这个不能没有
enctype="multipart/form-data"
method="post">
文件1:<input type="file" name="upload"><br/>
文件2:<input type="file" name="upload"><br/>
文件3:<input type="file" name="upload"><br/>
<input type="submit" value="上传" />
</form>
struts.xml
//设置上传文件大小,默认是2M 不设置只能上传2M大了就会报错
<constant name="struts.multipart.maxSize" value="10485760"/>
action
//要有get()、set()方法
private List<File> upload;
private List<String> uploadFileName;
private List<String> uploadContentType;
String root=Common.PICTRUE_ROOT_DIR;
File dir=FileUtil.createDir(root);
for(int i=0;i<upload.size();i++){
System.out.println(i);
InputStream is=new FileInputStream(upload.get(i));
String fileName=this.getUploadFileName().get(i);
Long time=System.currentTimeMillis();
String saveFileName=time.toString()+fileName.substring(fileName.lastIndexOf("."));
File uploadFile=new File(dir,saveFileName);
String path=FileUtil.getSubPath(Common.PICTRUE_ROOT_DIR, uploadFile);
String filepath =path.substring(0,path.lastIndexOf("\\"))+"\\" + fileName;
map.put(i,filepath);
OutputStream os=new FileOutputStream(uploadFile);
byte[] buffer=new byte[1024*1024];
int length;
while((length = is.read(buffer))>0){
os.write(buffer,0,length);
}
is.close();
os.close();
}
分享到:
相关推荐
总结来说,Struts2多文件上传涉及到Struts2配置、Action编写、HTML表单设计以及结果处理等多个环节。通过以上步骤,你可以在Struts2应用中实现稳定可靠的多文件上传功能。不过,实际项目中还需要考虑错误处理、安全...
Struts2是一个非常流行的Java Web框架,...总的来说,Struts2多文件上传并显示进度的实现需要结合前端和后端的技术,通过AJAX和XMLHttpRequest的`onprogress`事件来动态更新进度条,同时确保后端处理的高效和安全性。
在Struts2中,文件上传功能是一个常用特性,尤其在处理用户提交的多个文件时。本文将详细讲解如何使用Struts2进行多个文件的上传,重点是使用List集合进行上传。 首先,要实现Struts2的文件上传,必须引入必要的...
在实际项目中,文件上传和下载功能是必不可少的,本实例将详细讲解如何在Struts2框架下实现单个文件及多个文件的上传与下载。 首先,我们需要在Struts2的配置文件(struts.xml)中添加相关的Action配置,以便处理文件...
在Struts2中,文件上传和下载是常见的功能,对于用户交互和数据交换至关重要。这篇内容将深入讲解如何在Struts2中实现多文件的上传和下载。 1. **文件上传** 文件上传在Web应用中常常用于让用户提交各种类型的文件...
文件上传比较多,多文件上传少一点 文件下载很少的,看似简单,实则不然 网上的Struts2进行的文件下载一般都是单文件或者固定的文件,并没有(很少)实现随意文件的下载的例子 提供多文件上传,上传成功后,提供...
通过以上步骤,我们可以利用ExtJS的用户界面和Struts2的后台处理能力,实现一个完整的多文件上传功能。这个功能不仅提高了用户体验,还简化了开发流程。在实际项目中,还可以进一步优化,例如添加进度条显示、预览...
Struts2提供了完善的文件上传支持,让我们来详细探讨如何在Struts2中实现多文件上传。 首先,我们需要在Struts2的配置文件(struts.xml)中启用文件上传的支持。这通常涉及到添加`<constant>`标签来设置`struts....
本篇文章将深入讲解如何利用AjaxFileUpload与Struts2实现多文件上传,并结合jQuery进行前端交互。 首先,我们需要在项目中引入必要的库。Struts2提供了struts2-jquery-plugin,这是一个基于jQuery的插件,包含了...