一.表单中<form>标签一定要加上enctype="multipart/form-data"属性。(本人曾因为没写这个属性,找了好半天错误,郁闷!!)
二.在FormBean中定义属性:private FormFile[] newsPath=null;
三.在Action中写上传的核心代码:
//批量上传图片
String fname1="";
String newsPath="";
String picDes="";
String pic="";
FormFile file=null;
InputStream streamIn = null;
OutputStream streamOut = null;
String myroot = request.getRealPath("picture");
try {
File rootDir = new File(myroot);
if (!rootDir.isDirectory()) {
rootDir.mkdirs();
}
MultipartRequestHandler multipartRequestHandler =
newsForm.getMultipartRequestHandler();
// 取得所有上传文件的对象集合
Hashtable elements = multipartRequestHandler.getFileElements();
String[] textEle=(String[])multipartRequestHandler.getTextElements().get("newsPicDes");
System.out.println("获取JSP页面以newsPicDes命名的文本域的个数"+textEle.length);
for(int i=0;i<textEle.length;i++){
picDes+=textEle[i]+",";
}
// 循环遍历每一个文件
Collection values = elements.values();
for (java.util.Iterator i = values.iterator(); i.hasNext();) {
file = (org.apache.struts.upload.FormFile) i.next();// 取得上传的文件
String fname=file.getFileName();
fname1+=fname+",";
System.out.println(fname1);
System.out.println("以上是我获得的图片的名称用逗号隔开组城的字符串.......");
String plocation = myroot + "//" + fname;
streamIn = file.getInputStream();
streamOut = new FileOutputStream(plocation);
int bytesRead = 0;
byte[] buffer = new byte[8192];
while ((bytesRead = streamIn.read(buffer, 0, 8192)) != -1)
{
streamOut.write(buffer, 0, bytesRead);
}
streamOut.close();
streamIn.close();
}
} catch (Exception e) {
System.err.println();
}
分享到:
相关推荐
在Struts框架中,`FormFile`类是用于处理文件上传的一个关键组件,特别是对于单个或批量上传图片的情况。本篇文章将详细探讨如何使用Struts的`FormFile`来实现批量上传图片的功能。 ### 1. FormFile概述 `FormFile`...
通过SSH框架集成实现文件批量上传,可以极大地提高开发效率,但同时也需要注意安全性问题,例如防止文件上传攻击(如恶意代码注入)。因此,在实际开发中,应使用安全策略对上传的文件进行验证和过滤。
在Struts1.2框架中,FormFile是用于处理文件上传的一个关键组件,尤其是在实现批量上传功能时。本文将深入探讨如何使用FormFile在Struts1.2中实现实现批量文件上传,以及相关的技术要点。 一、Struts1.2简介 Struts...
在本文中,我们将探讨如何使用Struts1框架实现文件的批量上传功能。Struts1是一个经典的Java Web应用程序框架,它提供了模型-视图-控制器(MVC)架构,用于构建动态Web应用。在Struts1中实现文件上传,我们需要考虑...
在本文中,我们将探讨如何在Struts框架中实现批量上传文件的功能。批量上传文件是许多Web应用程序中常见的需求,例如创建文件资源中心或类似163网盘的功能。以下是如何使用Struts实现这一功能的详细步骤。 首先,...
SWFupload是一款强大的JavaScript库,专门用于实现网页上的文件批量上传功能。它通过Flash插件在浏览器端提供用户友好的界面,支持多文件选择、进度条显示、预览功能等,极大地提升了用户在上传大量文件时的体验。...
elmentUI Upload组件注意事项说明: v-model:file-list:文件上传--需要或已经被上传的文件。 :action:必须被实例化的属性,文件上传--上传文件所需要调用的指定的后端控制器行为方法。 name:如果指定的后端...
在这个示例中,`FormFile` 提供了两种构造方法,允许用户通过文件数据(byte数组)或者直接通过文件对象来初始化上传的文件信息。 1. **构造方法**: - `FormFile(String filname, byte[] data, String parameter...
### FormFile上传图片知识点解析 #### 一、FormFile简介及应用场景 - **定义与功能**:`FormFile`是Struts框架中的一个类,它主要用于处理上传的文件。通过`FormFile`对象,开发者可以方便地获取上传文件的相关...
myeclipse 工程 上传页:index.html 有两个例子: 一个是 jspsmart + strust 1.2 另一个用的 struts 自带的 formfile 环境:winxp jdk1.4.2 tomcat5.0或weblogic8.1 发布前,最好先编译一下,毕竟JDK版本太老了
在实际的Web应用开发中,文件上传功能是非常常见的一种需求,比如用户可能需要上传头像、文档等。在Struts中,可以实现单文件和多文件的上传,并且为了提升用户体验,我们还可以添加进度条来显示文件上传的状态。...
基于Struts文件上传(FormFile)详解 Struts是一个基于Java的Web应用程序框架,提供了许多有用的功能来简化Web开发过程。其中,文件上传是Struts中一个非常重要的功能。本文将详细介绍基于Struts文件上传的实现方法,...
不过,需要注意的是,增大这个值可能会消耗更多服务器内存,因此需要根据实际应用需求和服务器资源状况来合理设定。 此外,除了调整`maxHttpHeaderSize`,还可以考虑以下解决方案: 1. **使用多线程上传**:如果...
在Struts2框架中实现文件上传和下载功能,是Web开发中常见的需求。Struts2作为一个成熟的MVC框架,...开发者应当注意这些操作的安全性和性能影响,避免潜在的安全风险,并确保应用能够处理大规模的文件上传下载需求。
在Action类中,可以使用`org.apache.struts.upload.FormFile`对象来处理上传的文件。通过调用`FormFile.getFile()`获取实际的文件,`FormFile.getFileName()`获取文件名,`FormFile.getContentType()`获取文件类型...
在Struts 1.x版本中,处理文件上传主要依赖于`org.apache.struts.upload.FormFile`类。在Struts 2中,文件上传功能得到了增强,支持了多文件上传和更灵活的配置。 1. **Struts 1.x 文件上传** - 使用`multipart/...
Gin框架提供了`c.Request.FormFile`方法来获取上传的文件。下面是一个简单的示例: ```go package main import ( "github.com/gin-gonic/gin" ) func main() { r := gin.Default() r.POST("/upload", func(c *...
- `FormFile`: 用于封装上传文件的信息,包括文件名、类型、大小等。 ### 4. 配置文件 在Struts配置文件(struts-config.xml)中,你需要添加`multipart-config`元素到`<form-beans>`部分,指定文件上传的临时存储...
对于文件上传,我们需要创建一个继承自`org.apache.struts.action.ActionForm`的类,并包含一个`FormFile`属性,用于保存上传的文件信息。 4. **JSP页面**:在JSP页面上,使用`<html:file>`标签创建文件输入字段,...
Struts提供了`org.apache.struts.upload.FormFile`类来处理文件上传。这个类代表了上传文件的临时副本,包含了文件名、类型、大小等信息。 4. **配置Struts** - **struts-config.xml**:这是Struts的核心配置文件...