2015-12-02 3 views
0

Я создаю сервер изображений. Существует сервлет, который принимает изображение и намерение хранить изображение в Amazon S3.Как поместить изображение в Amazon S3

Part filePart = request.getPart("file"); 
InputStream inputStream = filePart.getInputStream(); 

Как передать содержимое на amazon s3, не загружая файл на вторичное хранилище?

АНИ Amazon S3 является

System.out.println("Uploading a new object to S3 from a file\n"); 
    File file = new File(uploadFileName); 
    s3client.putObject(new PutObjectRequest(
         bucketName, keyName, file)); 

Но это требует некоторого файла путь к локальной памяти. Как перенести изображение с сервлета непосредственно на S3, не сохраняя его на диске?

ответ

1

Да, есть еще один api, который вводит inputStream непосредственно в S3.

public PutObjectRequest(java.lang.String bucketName, 
      java.lang.String key, 
      java.io.InputStream input, 
      ObjectMetadata metadata) 

http://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/s3/model/PutObjectRequest.html#PutObjectRequest(java.lang.String,%20java.lang.String,%20java.io.InputStream,%20com.amazonaws.services.s3.model.ObjectMetadata)

Смежные вопросы