Mryqu's Notes


  • 首页

  • 搜索
close

FileUpload Streaming

时间: 2015-12-13   |   分类: Service+JavaEE     |   阅读: 87 字 ~1分钟

最近看一下org.apache.tomcat.util.http.fileupload,这个包是从commons-fileupload和commons-io复制而来,为了避免冲突而改名。 Apache Commons FileUpload是用于servlet和web应用的健壮、高性能文件上传库,它支持 RFC 1867和RFC2047。 传统的文件上传API假设文件在被用户访问前必须存储在某处,这种途径便捷、易于访问,但是消耗内存和耗时。流处理API允许在高性能和低内存配置之间做一点折中。 首先,需要确保请求是一个文件上传请求。这通过与传统API相同的静态方法实现:

// Check that we have a file upload request
boolean isMultipart = ServletFileUpload.isMultipartContent(request);

现在需要解析请求获取成分项:

// Create a new file upload handler
ServletFileUpload upload = new ServletFileUpload();

// Parse the request
FileItemIterator iter = upload.getItemIterator(request);
while (iter.hasNext()) {
  FileItemStream item = iter.next();
  if (!item.isFormField()) {
    String name = item.getFieldName();
    if(name==null) continue;
    InputStream stream = item.openStream();
    System.out.println("File field " + name + " with file name "
            + item.getName() + " detected.");
    // Process the input stream
    ...
  }
}```

这就是全部所需工作!

标题:FileUpload Streaming
作者:mryqu
声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 CN 许可协议。转载请注明出处!

#fileupload# #streaming#
[C++] 使用NM查看目标文件的符号列表
Sublime Text2+Ctags+Cscope使用实践
  • 文章目录
  • 站点概览

Programmer & Architect

662 日志
27 分类
1472 标签
GitHub Twitter FB Page
© 2009 - 2023 Mryqu's Notes
Powered by - Hugo v0.120.4
Theme by - NexT
0%