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
Post a Comment