Proljetni oblak AWS - S3
U ovom ćemo kratkom članku istražiti AWS podršku pruženu na platformi Spring Cloud - usredotočujući se na S3.
Serija sadržaja: Ovaj je članak dio serije: • Spring Cloud AWS - S3 (trenutni članak) • Spring Cloud AWS - EC2• Proljetni oblak AWS - RDS
• Spring Cloud AWS - podrška za razmjenu poruka
1. Jednostavno preuzimanje S3
Počnimo s laganim pristupom datotekama pohranjenim na S3:
@Autowired ResourceLoader resourceLoader; public void downloadS3Object (String s3Url) baca IOException {Resource resource = resourceLoader.getResource (s3Url); Datoteka je preuzetaS3Object = nova datoteka (resource.getFilename ()); probajte (InputStream inputStream = resource.getInputStream ()) {Files.copy (inputStream, downloadedS3Object.toPath (), StandardCopyOption.REPLACE_EXISTING); }}
2. Jednostavno slanje S3
Također možemo prenijeti datoteke:
public void uploadFileToS3 (datoteka datoteke, niz s3Url) baca IOException {WritableResource resource = (WritableResource) resourceLoader .getResource (s3Url); probajte (OutputStream outputStream = resource.getOutputStream ()) {Files.copy (file.toPath (), outputStream); }}
3. S3 URL struktura
The s3Url predstavljen je u formatu:
s3: ///
Na primjer, ako datoteka bar.zip je u mapi foo na a moja-s3-kanta sef, tada će URL biti:
s3: //my-s3-bucket/foo/bar.zip
Također, možemo istovremeno preuzeti više objekata odjednom ResourcePatternResolver i podudaranje uzorka u obliku mrava:
private ResourcePatternResolver resourcePatternResolver; @Autowired javni void setupResolver (ApplicationContext applicationContext, AmazonS3 amazonS3) {this.resourcePatternResolver = novi PathMatchingSimpleStorageResourcePatternResolver (amazonS3, applicationContext); } public void downloadMultipleS3Objects (String s3Url) baca IOException {Resource [] allFileMatchingPatten = this.resourcePatternResolver .getResources (s3Url); // ...}}
URL-ovi mogu sadržavati zamjenske znakove umjesto točnih imena.
Na primjer s3: //my-s3-bucket/**/a*.txt URL će rekurzivno tražiti sve tekstualne datoteke čiji naziv počinje s "a'U bilo kojoj mapi moja-s3-kanta.
Imajte na umu da grah ResourceLoader i ResourcePatternResolver kreiraju se prilikom pokretanja aplikacije pomoću značajke automatske konfiguracije Spring Boota.
4. Zaključak
I gotovi smo - ovo je brz i detaljan uvod u pristup S3 pomoću Spring Cloud AWS-a.
U sljedećem članku serije istražit ćemo EC2 podršku okvira.
Kao i obično, primjeri su dostupni na GitHubu.
Sljedeći » Proljetni oblak AWS - EC2