`
lmzxx520
  • 浏览: 14265 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

struts中不限数量的多文件上传

阅读更多

曾经见过有人给出的最蠢的一个做法,是在ActionForm里放了20个Formfile 类型的变量。
其实只需要下面一段代码即可。 

       

String dirPath = getServlet().getServletContext().getRealPath("/") 
                         + "/upload"; 
        Hashtable fileh = actionForm.getMultipartRequestHandler(). 
                          getFileElements(); 
        for (Enumeration e = fileh.keys(); e.hasMoreElements(); ) { 
            String key = (String) e.nextElement(); 
            try { 
                FormFile formfile = (FormFile) fileh.get(key); 
                String filename = formfile.getFileName().trim(); //文件名 
                if (!"".equals(filename)) { 
  //不同的浏览器传上的文件名可能有区别,有的是全路径的 
//在这里保存文件 
                    InputStream ins = formfile.getInputStream(); 
                    OutputStream os = new FileOutputStream(dirPath + 
                            File.separatorChar 
                            + filename); 
                    int bytesRead = 0; 
                    byte[] buffer = new byte[8192]; 
                    while ((bytesRead = ins.read(buffer, 0, 8192)) != -1) { 
                        os.write(buffer, 0, bytesRead); 
                    } 
                    os.close(); 
                    ins.close(); 

                } 
            } catch (Exception ex) { 
                logger.debug("出错了", ex); 
            } 
        } 

 

 

分享到:
评论

相关推荐

    struts2 批量上传 图片+文件

    在Struts2的配置文件(struts.xml)中,我们需要配置一个Action来接收并处理文件上传的请求。确保Action类继承了`org.apache.struts2.interceptor.FileUploadInterceptor`拦截器,该拦截器负责处理文件上传。 3. **...

    struts实现任意多文件上传实例

    总的来说,"struts实现任意多文件上传实例"是一个实用的示例,可以帮助开发者了解和掌握在Struts中进行多文件上传的完整流程。通过学习这个实例,你可以更深入地理解Struts框架和文件上传的处理方式。

    struts2多文件上传

    在Struts2中实现多文件上传是一项常见的功能,尤其在处理用户需要一次性提交多个文件的场景下。本篇文章将详细探讨如何在Struts2中实现多文件上传,并介绍相关的知识点。 首先,我们需要了解Struts2的文件上传机制...

    struts可上传多个文件

    本篇文章将详细介绍如何在Struts中实现不限数量的多文件上传。 首先,我们需要理解Struts的文件上传机制。Struts使用`Commons FileUpload`库来处理文件上传。`Commons FileUpload`是一个独立于Servlet API的组件,...

    基于Javascript和Struts不定数量文件上传的设计.pdf

    1. 提出了基于Javascript和Struts不定数量文件上传的设计思想,解决了用户需求的不确定性问题和服务器端的内存浪费问题。 2. 实现了客户端的动态输入界面,提高了客户端的交互性。 3. 使用Struts框架中的...

    swfupload+struts2多文件上传的例子

    通过以上步骤,你就成功地在Struts2中整合了SWFUpload,实现了多文件上传功能。这个DEMO可以帮助初学者理解这种集成方式,同时也可以作为一个基础模板,根据实际需求进行扩展和优化。记住,实际开发中还需要考虑错误...

    Struts2.3.6的文件上传(多种)的实现

    在本文中,我们将深入探讨如何在Struts2框架下实现三种不同类型的文件上传:单个文件上传、固定数量文件上传以及不固定数量文件上传。 首先,为了实现文件上传,我们需要以下准备: 1. 获取Struts2.3.6的库文件,...

    struts+ ibatis上传下载文件

    在"Struts1 + iBatis + MySQL做的上传下载文件"项目中,开发者使用了Struts1来处理用户的文件上传和下载请求,iBatis作为数据访问层,与MySQL数据库进行交互存储文件的相关信息。以下是这个项目涉及的一些关键知识点...

    struts2 上传图片限制.

    Struts2中的文件上传功能主要由`<s:file>`标签和`org.apache.struts2.interceptor.FileUploadInterceptor`实现。当开发者需要处理用户上传的文件时,通常会遇到对上传文件大小的限制问题。这些限制不仅有助于提高...

    java 附件文件上传

    要支持多文件上传,表单中应有多个`<input type="file">`元素,并在ActionForm中添加相应数量的`FormFile`实例。在服务器端,遍历这些`FormFile`对象,对每个文件进行处理。 7. **文件保存** 通常,上传的文件会...

    struts5连接池与上传

    为了实现文件上传,我们需要在ActionForm中使用`File`和`FileUpload`接口的实现类,比如`org.apache.struts.upload.FormFile`。同时,需要在HTML表单中使用`enctype="multipart/form-data"`属性来指定编码类型,以...

    java中struts2实现简单的文件上传与下载

    在Struts2中,文件上传和下载是常见的需求,对于开发者来说,实现这些功能并不复杂。以下将详细介绍如何在Struts2中实现文件上传与下载。 **一、Struts2文件上传** 1. **Struts2的文件上传标签** 文件上传主要...

    java文件上传组件包(fileupload)

    - 可以与Spring MVC、Struts等框架集成,简化文件上传的处理逻辑。 总的来说,Apache的FileUpload组件为Java Web应用提供了一个强大且易于使用的文件上传解决方案。开发者可以根据需求进行配置和扩展,以满足不同...

    jquery 插件ajaxfileupload与struts2结合 实现异步上传图片

    这种技术在现代Web应用中非常常见,它提升了用户体验,允许用户在不刷新整个页面的情况下上传文件,特别是对于大文件或需要处理的文件数量较多时,异步上传的优势更为明显。 首先,我们要了解AjaxFileUpload是...

    Struts2.0上传进度条简单示例

    在这个示例中,我们将深入探讨如何在Struts2框架下实现文件上传进度条的功能。 首先,Struts2框架提供了一种处理文件上传的机制,基于Apache的Commons FileUpload库。为了实现上传进度条,我们需要理解这两个关键...

    AJAX多文件上傳

    在多文件上传中,Servlet接收上传的文件,将其保存在服务器上,并返回确认信息。 四、具体实现步骤 1. 创建HTML表单:设置`enctype="multipart/form-data"`以支持文件上传,使用`<input type="file" multiple>`允许...

    Struts常见的Form(一)

    5. **文件上传Form Bean**: 当需要处理文件上传时,Struts提供了`org.apache.struts.upload.FormFile`接口。用户可以选择文件并将其作为Form Bean的一部分提交。这需要在struts-config.xml中配置特殊的表单类型,并...

    java_sturts多附件上传

    在文件上传过程中可能会出现各种异常,如文件过大、格式不正确等,需要捕获并返回相应的错误信息,以便用户了解问题所在。 9. **响应结果**: 最后,Action类执行完后,返回一个结果,告诉视图层如何展示。如果是...

    三、struts2+swfUpload简单例子

    5. **配置Struts2**:在struts.xml中,你需要为SwfUpload的Action创建一个配置,指定接收文件的Action方法,可能还需要配置拦截器栈以处理文件上传。 6. **安全性考虑**:在实际应用中,必须考虑到文件上传的安全性...

Global site tag (gtag.js) - Google Analytics