אביב ענן AWS - S3

במאמר מהיר זה, אנו הולכים לחקור את תמיכת AWS הניתנת בפלטפורמת Spring Cloud - תוך התמקדות ב- S3.

סדרת תוכן: מאמר זה הוא חלק מסדרה: • Spring Cloud AWS - S3 (המאמר הנוכחי) • Spring Cloud AWS - EC2

• ענן אביב AWS - RDS

• Spring Cloud AWS - תמיכה בהודעות

1. הורדת S3 פשוטה

נתחיל בגישה קלה לקבצים המאוחסנים ב- S3:

@ ResourceLoader ResourceLoader @Autowired; הורדת חלל ציבורית S3Object (מחרוזת s3Url) זורק IOException {Resource resource = resourceLoader.getResource (s3Url); קובץ שהורד S3Object = קובץ חדש (resource.getFilename ()); נסה (InputStream inputStream = resource.getInputStream ()) {Files.copy (inputStream, downloadedS3Object.toPath (), StandardCopyOption.REPLACE_EXISTING); }}

2. העלאת S3 פשוטה

אנו יכולים גם להעלות קבצים:

uploadFilToS3 (קובץ קובץ, מחרוזת s3Url) פולט בטלוויזיה זורק IOException {WritableResource resource = (WritableResource) resourceLoader .getResource (s3Url); נסה (OutputStream outputStream = resource.getOutputStream ()) {Files.copy (file.toPath (), outputStream); }}

3. מבנה URL של S3

ה s3Url מיוצג באמצעות הפורמט:

s3: ///

לדוגמא, אם קובץ bar.zip נמצא בתיקיה foo על my-s3-bucket דלי, ואז כתובת האתר תהיה:

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

בנוסף, אנו יכולים גם להוריד מספר עצמים בו זמנית באמצעות ResourcePatternResolver והתאמת דפוס בסגנון נמלה:

פרטי ResourcePatternResolver resourcePatternResolver; @Autowired חלל ריק setupResolver (ApplicationContext applicationContext, AmazonS3 amazonS3) {this.resourcePatternResolver = חדש PathMatchingSimpleStorageResourcePatternResolver (amazonS3, applicationContext); } הורדת חלל ציבורית ציבורית MultipleS3Objects (String s3Url) זורק IOException {Resource [] allFileMatchingPatten = this.resourcePatternResolver .getResources (s3Url); // ...}}

כתובות אתרים יכולות להכיל תווים כלליים במקום שמות מדויקים.

למשל ה s3: //my-s3-bucket/**/a*.txt URL יחפש ברקורסיביות את כל קבצי הטקסט ששמם מתחיל ב- 'א'בכל תיקיה של my-s3-bucket.

שימו לב שהשעועית ResourceLoader ו ResourcePatternResolver נוצרים בעת הפעלת היישום באמצעות תכונת התצורה האוטומטית של Spring Boot.

4. מסקנה

וגמרנו - זהו מבוא מהיר ונקודתי לגישה ל- S3 באמצעות Spring Cloud AWS.

במאמר הבא של הסדרה נחקור את התמיכה ב- EC2 במסגרת.

כרגיל, הדוגמאות זמינות ב- GitHub.

הַבָּא » Spring Cloud AWS - EC2

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