0

我正在 vaadin 开发我的第一个应用程序。现在我正在尝试自定义上传组件。总之,我必须上传图像。

现在我的组件以标准方式实现:

public OutputStream receiveUpload(String filename,String mimeType) {
// Create upload stream
FileOutputStream fos = null; // Stream to write to
try {
    // Open the file for writing.
    file = new File("/tmp/uploads/" + filename);
    fos = new FileOutputStream(file);
} catch (final java.io.FileNotFoundException e) {
    new Notification("Could not open file<br/>",e.getMessage(),Notification.Type.ERROR_MESSAGE).show(Page.getCurrent());
    return null;
}
return fos; // Return the output stream to write to
 }

我想问你,我是否可以在不使用服务器上的临时文件的情况下上传文件。

我能怎么做?

4

1 回答 1

0

当然,

您只需要为上传组件提供一个 OutputStream。例如,这可能是一个 ByteArrayOutputStream,因此您将所有内容都作为一个大字节数组。

请注意,当用户上传一个 10 GB 大小的文件时,您还需要服务器上那么多内存来处理该请求

安德烈

于 2013-11-12T17:22:35.027 回答