Spring Cloud AWS - S3

V tomto rýchlom článku sa budeme zaoberať podporou AWS poskytovanou platformou Spring Cloud - so zameraním na S3.

Séria s obsahom: Tento článok je súčasťou série: • Spring Cloud AWS - S3 (aktuálny článok) • Spring Cloud AWS - EC2

• Spring Cloud AWS - RDS

• Spring Cloud AWS - podpora správ

1. Jednoduché stiahnutie S3

Začnime ľahkým prístupom k súborom uloženým na S3:

@Autowired ResourceLoader resourceLoader; public void downloadS3Object (String s3Url) vyvolá IOException {Resource resource = resourceLoader.getResource (s3Url); Súbor stiahnutýS3Object = nový Súbor (resource.getFilename ()); try (InputStream inputStream = resource.getInputStream ()) {Files.copy (inputStream, stiahnutýS3Object.toPath (), StandardCopyOption.REPLACE_EXISTING); }}

2. Jednoduché nahrávanie S3

Môžeme tiež nahrávať súbory:

public void uploadFileToS3 (súbor File, String s3Url) hodí IOException {WritableResource resource = (WritableResource) resourceLoader .getResource (s3Url); try (OutputStream outputStream = resource.getOutputStream ()) {Files.copy (file.toPath (), outputStream); }}

3. Štruktúra URL S3

The s3Url je reprezentovaný vo formáte:

s3: ///

Napríklad ak súbor bar.zip je v priečinku foo na a moje-s3-vedro segment, potom bude adresa URL:

s3: //my-s3-bucket/foo/bar.zip

Môžeme tiež stiahnuť viac objektov naraz pomocou ResourcePatternResolver a porovnávanie vzorov v štýle Ant:

private ResourcePatternResolver resourcePatternResolver; @Autowired public void setupResolver (ApplicationContext applicationContext, AmazonS3 amazonS3) {this.resourcePatternResolver = nový PathMatchingSimpleStorageResourcePatternResolver (amazonS3, applicationContext); } public void downloadMultipleS3Objects (String s3Url) vyvolá IOException {Resource [] allFileMatchingPatten = this.resourcePatternResolver .getResources (s3Url); // ...}}

Webové adresy môžu namiesto presných mien obsahovať zástupné znaky.

Napríklad s3: //my-s3-bucket/**/a*.txt URL rekurzívne vyhľadá všetky textové súbory, ktorých názov začína „a„V ľubovoľnom priečinku súboru moje-s3-vedro.

Všimnite si, že fazuľa ResourceLoader a ResourcePatternResolver sa vytvárajú pri štarte aplikácie pomocou funkcie automatickej konfigurácie Spring Boot.

4. Záver

A máme hotovo - toto je rýchly a podrobný úvod do prístupu k S3 s Spring Cloud AWS.

V ďalšom článku série preskúmame podporu rámca EC2.

Ako obvykle sú príklady k dispozícii na GitHub.

Ďalšie » Spring Cloud AWS - EC2

$config[zx-auto] not found$config[zx-overlay] not found