You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS SDK for Java 2.X替代1.X版本S3客户端创建方案咨询

AWS SDK for Java 2.X 等效S3客户端实现方案

针对你从AWS SDK 1.12.435升级到2.20.32版本的需求,以下是与原1.X代码等效的S3客户端实现逻辑:

关键类映射(1.X → 2.X)

  • AmazonS3 → software.amazon.awssdk.services.s3.S3Client
  • AWSStaticCredentialsProvider → software.amazon.awssdk.auth.credentials.StaticCredentialsProvider
  • BasicAWSCredentials → software.amazon.awssdk.auth.credentials.AwsBasicCredentials
  • AmazonS3ClientBuilder → S3Client.builder()

完整实现代码

import software.amazon.awssdk.auth.credentials.AwsBasicCredentials;
import software.amazon.awssdk.auth.credentials.StaticCredentialsProvider;
import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.s3.S3Client;
import software.amazon.awssdk.services.s3.S3Configuration;
import java.net.URI;

public S3Client getS3Client(final String s3AK, final String s3SK, final String s3Url, String region) throws Exception {
    // 解密凭证并创建AWS基础凭证对象
    AwsBasicCredentials awsCreds = AwsBasicCredentials.create(
            EncryptDecryptUtils.decrypt(s3AK),
            EncryptDecryptUtils.decrypt(s3SK)
    );

    // 构建S3客户端
    return S3Client.builder()
            // 设置凭证提供者
            .credentialsProvider(StaticCredentialsProvider.create(awsCreds))
            // 启用路径样式访问(对应1.X的withPathStyleAccessEnabled)
            .serviceConfiguration(S3Configuration.builder()
                    .pathStyleAccessEnabled(true)
                    .build())
            // 设置端点和区域
            .endpointOverride(URI.create(s3Url))
            .region(Region.of(region))
            .build();
}

代码说明

  • 凭证处理:2.X版本中用AwsBasicCredentials替代BasicAWSCredentials,并通过StaticCredentialsProvider提供给客户端,逻辑与1.X一致,保留了解密步骤。
  • 路径样式访问:通过S3Configuration配置类来开启,对应1.X的withPathStyleAccessEnabled(true)。
  • 端点与区域:直接通过endpointOverride指定自定义S3地址,region用Region.of()包装后传入,替代1.X的EndpointConfiguration。

内容的提问来源于stack exchange,提问作者Arnav Bose

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 08:32:48