File Service是否使用Java将数据存储为Google App Engine中的blob值

时间:2013-01-29 07:32:11

标签: java google-app-engine google-cloud-storage

我有一个像这样的HTML表单,

<form action="/upload" method="post" enctype="multipart/form-data">
<input type="file" name="file" />
<input type="submit"value="upload"/>
</form>

使用以下代码在GAE中使用文件服务,将数据存储在Google应用引擎中。

FileService fileService = FileServiceFactory.getFileService();
AppEngineFile file = fileService.createNewBlobFile(mime, fileName);
boolean lock = true;
byte[] b1 = new byte[BUFFER_SIZE];
int readBytes1;
FileWriteChannel writeChannel = fileService.openWriteChannel(file, lock);
while ((readBytes1 = is1.read(b1)) != -1) {
writeChannel.write(ByteBuffer.wrap(b1, 0, readBytes1));
}
writeChannel.closeFinally();

此文件服务是否将上传的文件存储为Google App引擎中的Blob值。

  • 在使用文件服务之前,我尝试使用createUploadUrl()方法直接以HTML格式将文件存储为blob值,我也可以使用google应用引擎中的“View Blob”查看blob。
  • 现在使用此文件后,我只看到文件的密钥,而不是选项“查看Blob”,任何人都可以说出现这种情况的原因。

1 个答案:

答案 0 :(得分:1)

请参阅以下链接。此处显示Apache Common File Upload。

How to handle html5 input multiple in java gae