Автор оригинала: Rajib Halder.
Укажите ниже зависимость в pom.xml:
com.amazonaws aws-java-sdk 1.11.825
Ниже приведен фрагмент кода
import com.amazonaws.services.s3.AmazonS3; public class S3Factory { @Autowired AmazonS3 amazonS3Client; @Value("${s3.bucket.name}") // Default S3 bucket name. You need to create the bucket manually on AWS S3 String defaultBucketName; @Value("${s3.default.folder}") // The folder inside S3 bucket where the file will be logically store. String defaultBaseFolder; public void uploadFile(String filedir, String name, byte[] content) { File file = new File(name); try (FileOutputStream iofs = new FileOutputStream(file)) { iofs.write(content); amazonS3Client.putObject(defaultBucketName, defaultBaseFolder + "/" + filedir + "/" + file.getName(), file); } catch (IOException e) { e.printStackTrace(); } } }
Теперь ваш код готов, теперь вы можете использовать его автоматически в любом классе обслуживания, как показано ниже:
@Autowired S3Factory s3Factory; And invoke it like below. s3Factory.uploadFile(fileDir, fileName.toString(), file.getBytes());
Ваш файл теперь хранится в корзине S3.
Разве это не потрясающе ?!!! Счастливое Кодирование
Оригинал: “https://www.codementor.io/@rajibhalder/how-to-upload-file-to-aws-s3-bucket-using-spring-boot-190839ax2i”