aws-sdk-java-v2-s3

Manage S3 buckets and object transfers using AWS SDK for Java 2.x.

Updated Apr 5, 2026
One-click install
npx skills add https://github.com/rizaldiem/digital-invitation-web_V2 --skill aws-sdk-java-v2-s3-rizaldiem
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: aws-sdk-java-v2-s3
Source: https://github.com/rizaldiem/digital-invitation-web_V2/tree/main/.windsurf/skills/aws-sdk-java-v2-s3
Command: npx skills add https://github.com/rizaldiem/digital-invitation-web_V2 --skill aws-sdk-java-v2-s3-rizaldiem

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

## What problem does it solve? This skill helps Java developers implement reliable, secure, and performant Amazon S3 storage operations using the AWS SDK for Java 2.x, removing uncertainty when building uploads, downloads, multipart transfers, presigned URL flows, and Spring Boot integrations.

## Core Features & Use Cases

  • Bucket management: create, list, head, and delete buckets with waiters and proper configuration.
  • Object operations: put/get objects, manage metadata, storage classes, tagging, and batch deletes.
  • Large file handling: multipart uploads, resume, parallel transfers and S3 Transfer Manager usage with progress tracking.
  • Presigned URLs & security: generate presigned GET/PUT URLs, configure server-side encryption, ACLs, and IAM/STS best practices.
  • Integration & testing: Spring Boot configuration examples, Transfer Manager beans, and LocalStack-based test setups for CI.
  • Reliability: examples include retry policies, throttling/backoff handling, and cleanup of failed multipart uploads.
  • Use Case: Upload large user media from a web backend using Transfer Manager, persist metadata, and return a presigned download link for clients.

### Quick Start Use the aws-sdk-java-v2-s3 skill to upload a local file 'document.pdf' to bucket 'my-bucket' with metadata and return a presigned download URL.

Frequently Asked Questions about aws-sdk-java-v2-s3

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I upload large files to S3 using Java and handle multipart transfers?

To generate presigned S3 URLs in Java, use the S3Presigner client from the AWS SDK to create time-limited GET or PUT links. This grants secure temporary access to private objects without exposing credentials or requiring direct server uploads.

Can I use AWS SDK for Java 2.x with Spring Boot for S3 operations?

Asynchronous S3Client usage in Java enables non-blocking object operations using CompletableFuture responses. The AWS SDK 2.x async client allows concurrent uploads and downloads without blocking threads, improving throughput in high-concurrency backend environments.

How do I test S3 operations in Java using LocalStack?

LocalStack provides a local S3 emulator for Java integration testing by pointing the S3Client endpoint to the LocalStack instance. This allows CI pipelines to execute bucket creation and object transfer tests without hitting actual AWS infrastructure.

What is the best way to handle S3 retry and throttling errors in a Java backend?

Failed multipart uploads in Java S3 are managed by aborting the upload through the S3Client to clean up incomplete parts. The AWS SDK provides abort commands that delete dangling part data, preventing unnecessary storage costs from interrupted transfers.