Upload file to S3

 gradle

implementation 'com.amazonaws:aws-java-sdk:1.11.163'



import java.io.File;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import com.amazonaws.ClientConfiguration;
import com.amazonaws.Protocol;
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.AWSStaticCredentialsProvider;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.client.builder.AwsClientBuilder;
import com.amazonaws.regions.Regions;
import com.amazonaws.services.s3.AmazonS3;
import com.amazonaws.services.s3.AmazonS3ClientBuilder;

@Configuration
public class Config {

@Bean
public AmazonS3 s3() {
AWSCredentials credentials = new BasicAWSCredentials(
"xxxd20f819xxxxxxxxx2fa6268edxxx",
"yyyyy8e369zzzzzzzzz2b2f52tttttt"
);

ClientConfiguration clientConfig = new ClientConfiguration();
clientConfig.setProtocol(Protocol.HTTPS);
clientConfig.setSignerOverride("S3SignerType");

AmazonS3 s3 = AmazonS3ClientBuilder.standard()
.withCredentials(new AWSStaticCredentialsProvider(credentials))
.withClientConfiguration(clientConfig)
// .withPathStyleAccessEnabled(true) // This option should be added when
// using the CDN endpoint of VOS for CDN or VOS Dev.
.withEndpointConfiguration(
new AwsClientBuilder.EndpointConfiguration(
"https://line-objects-dev.com",
Regions.US_EAST_1.toString()))
.build();

//s3.putObject("bucket_name", "folder/file.xxx",
// new File("/Users/tt/xx/path/a.txt"));

return s3;

}

}


Comments

Popular posts from this blog

Fixing the DeepSpeed Import Error While Fine-Tuning the Qwen Model

Amazon Linux 2023 - User data configuration for launch templates to connect to the EKS cluster

How to create ISM policy and rotate logs in opensearch