1. Content Type

 - 파일명에 따라 ContentType을 설정한다.

ObjectMetadata objMeta = new ObjectMetadata();

2. Content Length

 - byte length를 추가한다.

ObjectMetadata objMeta = new ObjectMetadata();

byte[] bytes = IOUtils.toByteArray(targetIS);

ByteArrayInputStream byteArrayIs = new ByteArrayInputStream(bytes);

PutObjectRequest putObjReq = new PutObjectRequest(bucketName, key, byteArrayIs, objMeta);

 - 해당 소스처리를 안할 경우 아래와 같은 warning 메시지가 뜬다.

[WARN ] c.a.services.s3.AmazonS3Client:1714 - No content length specified for stream data.  Stream contents will be buffered in memory and could result in out of memory errors.

3. 임시파일로 업로드

 - 서버 내 파일을 저장하지않고, 바로 S3에 업로드할 때 사용하면 좋다.

File file = File.createTempFile("test", ".txt");

+ Recent posts