【问题标题】:multiple file upload in JSP strutsJSP struts中的多个文件上传
【发布时间】:2011-03-08 07:07:13
【问题描述】:

我的客户想要一个功能(例如高级 Gmail 版本),用户可以按住 CTRL 键并选择多个文件一次性上传。真的有可能吗?请让我知道您对此的宝贵反馈/建议。

提前致谢。

【问题讨论】:

    标签: jsp struts2 struts struts-1 struts-html


    【解决方案1】:

    是的,S2 可以处理多个文件。我不知道 UI 的注意事项。虽然不是同一个问题的答案,但这将显示其他人正在使用文件上传拦截器,并且一次提出多个文件的问题:Limit Struts2 file upload max size without uploading the whole file

    【讨论】:

      【解决方案2】:

      Gmail 正在为此使用 Flash。如果 Flash 被禁用,它会优雅地降级为普通的 HTML <input type="file"> 字段,该字段允许一次只选择一个文件。

      有几个免费的基于 Flash 的库允许在一次浏览中选择多个文件,流行的库是 SwfUploadUploadify。在 Commons FileUpload 的帮助下,在 JSP/Servlet 后端处理这个问题很简单。由于我不使用它,因此我无法详细说明如何将其与 Struts 结合使用。

      【讨论】:

        【解决方案3】:

        是的,它集成在 Struts 2 中。阅读doc。 您可以在 Web 表单中轻松使用此功能,但请记住:

        • form 必须用这部分定义:

          enctype="multipart/form-data" method='post'

        • 字段由name 提交。所以:

        • jsp 页面中,使用name= 定义您的<input type="file">,例如name="fileInput",并在您的操作类中,像文档一样定义它们:

          文件文件输入;

          字符串文件输入内容类型;

          字符串文件输入文件名;

        或者,作为数组/列表:

        File[] fileInput;  //this array will contain all the input file fields with name="fileInput", so name all fields with the same name.
        String[] fileInputContentType;
        String[] fileInputFileName;
        

        还有 getter/setter。其余的工作都由 Struts 2 完成。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2011-08-18
          • 1970-01-01
          • 2012-04-06
          • 2019-01-02
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多