【问题标题】:Servlet 3.0 streaming api for file upload用于文件上传的 Servlet 3.0 流式 API
【发布时间】:2011-03-18 11:54:03
【问题描述】:

新的 Servlet 3.0 API 为我们提供了解析多部分表单数据的便捷方式。但它将上传文件的内容存储在文件系统或内存中

是否有适用于 Servlet 3.0 的流 API?

类似于Commons FileUpload。我必须直接从 InputStream 写入内容并写入另一个 OutputStream 并且我不想将临时文件内容存储在磁盘或内存中

【问题讨论】:

  • 找到解决办法了吗?

标签: java file-upload servlet-3.0


【解决方案1】:

我曾经将它用于类似的事情,但不是用于 servlet。它不会用数据填满你的内存。希望能帮助到你: http://code.google.com/p/io-tools/wiki/Tutorial_EasyStream

【讨论】:

    【解决方案2】:

    查看 Servlet 3.0 规范可能无法实现流式处理

    对于以 form-data 作为 Content-Disposition 但没有 文件名,零件的字符串值也可以通过 HttpServletRequest 上的 getParameter /getParameterValues 方法,使用 零件的名称。

    所以必须预先解析请求,以便所有非文件部分都可以作为 HttpServletRequest 参数公开。

    如果您需要流式传输,则必须使用第三方库。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-02-24
      • 1970-01-01
      • 2010-09-08
      • 2018-06-11
      • 2012-06-29
      • 1970-01-01
      相关资源
      最近更新 更多