آموزش Spring Boot 4 - ساخت REST APIs امن با JWT و AWS
✅ سرفصل و جزئیات آموزش
آنچه یاد خواهید گرفت:
- اصول REST API را یاد بگیرید - REST API، منابع، منابع فرعی، URI، متدهای HTTP، کدهای وضعیت HTTP
- اصول REST API را یاد بگیرید - بهترین شیوهها
- یاد بگیرید چگونه REST APIs یک اپلیکیشن تجارت الکترونیک را با استفاده از Spring Boot و Spring Security و JWT و Spring Data JPA (Hibernate) و پایگاه داده MySQL بسازید.
- یاد بگیرید چگونه برای رابطه ONE-TO-MANY و CRUD REST APIs بسازید. /customers/{customerId}/orders/{orderId}
- یاد بگیرید چگونه برای REST API جستجو و فیلتر در پروژه Spring Boot و REST API بسازید.
- یاد بگیرید چگونه از کتابخانه Lombok استفاده کنید.
- یاد بگیرید چگونه مدیریت استثنا را در REST APIهای Spring Boot پیادهسازی کنید.
- یاد بگیرید چگونه از Spring Security در پروژه Spring Boot استفاده کنید و احراز هویت و مجوزدهی In-Memory و مبتنی بر پایگاه داده را انجام دهید.
- یاد بگیرید چگونه متدهای کوئری را با استفاده از Spring Data JPA بنویسید.
- یاد بگیرید چگونه REST APIs را با استفاده از Postman REST Client تست کنید.
- یاد بگیرید چگونه از JWT همراه با API لاگین استفاده کنید و REST APIs امن را با JWT محافظت کنید.
- مستندسازی REST APIs را با Swagger UI یاد بگیرید.
- یاد بگیرید چگونه مستندات Swagger REST را با حاشیهنویسیها سفارشیسازی کنید.
- اصول Spring Data JPA را یاد بگیرید.
- اصول REST API را یاد بگیرید - چگونه REST APIs را طراحی کنیم؟
- تفاوتهای REST API را یاد بگیرید - GET و POST و PUT و PATCH و DELETE
- یاد بگیرید چگونه CRUD REST APIs را در پروژه Spring Boot بسازید.
- یاد بگیرید چگونه REST APIs را برای صفحهبندی و مرتبسازی در پروژه Spring Boot بسازید.
- یاد بگیرید چگونه REST APIs را برای لاگین و ثبتنام در پروژه Spring Boot بسازید.
- یاد بگیرید چگونه از DTOs استفاده کنید.
- اعتبارسنجی REST API در Spring Boot را یاد بگیرید.
- یاد بگیرید چگونه REST APIs امن (امنیت مبتنی بر نقش) را در پروژه Spring Boot پیادهسازی کنید.
- نگاشت One-To-Many و Many-To-One و Many-To-Many در JPA/Hibernate را یاد بگیرید.
- یاد بگیرید JWT چیست، چگونه کار میکند و چگونه JWT (JSON Web Token) را در Spring Security پیکربندی کنید.
- 4 استراتژی مهم نسخهسازی برای REST API را یاد بگیرید.
- REST APIهای Spring Boot را با JWT و استفاده از Swagger UI تست کنید.
- یاد بگیرید چگونه پروفایلها را به پروژه Spring Boot اضافه کنید.
- یاد بگیرید چگونه اپلیکیشن تجارت الکترونیک مبتنی بر Spring Boot را روی AWS Cloud (تولید) مستقر کنید.
پیشنیازهای دوره
- نیازمند تجربه قبلی در برنامهنویسی Java است.
- نیازی به تجربه REST API ندارید. هر چیزی را که لازم است یاد خواهید گرفت.
- نیازی به تجربه Spring Boot ندارید؛ هر موردی را که لازم است یاد خواهید گرفت.
- مبانی Spring Data JPA (اما نگران نباشید، یک دوره فشرده Spring Data JPA برای مبتدیان هم اضافه کردهایم.)
توضیحات دوره
در این دوره یاد میگیرید چگونه با توسعه یک اپلیکیشن کامل تجارت الکترونیک و REST APIs واقعی و عملی بسازید و چگونه آن را روی AWS Cloud مستقر کنید.
این دوره به طور کامل با هر دو نسخه Spring Boot 3 و Spring Boot 4 سازگار است. کد منبع کامل بدون تغییر باقی میماند و عملکردی یکپارچه و تجربهای روان از یادگیری را در هر دو نسخه تضمین میکند.
در این دوره، از رویکرد توسعه پروژه واقعی و مطابق با استانداردهای صنعت پیروی میکنیم.
- این دوره توسعه REST API در Spring Boot را از پایه پوشش میدهد.
- این دوره اصول REST API را از ابتدا پوشش میدهد.
- کد منبع و فایلهای PDF (یادداشتهای کلاس) برای دانلود در دسترس هستند.
REST API چیست؟
REST مخفف Representational State Transfer است. این مجموعهای از قوانین است که توسعهدهندگان برای ساخت APIهایی استفاده میکنند که روی وب کار میکنند، درست مانند وبسایتهایی که در مرورگر خود باز میکنید. وقتی یک API از قوانین REST پیروی کند، آن را REST API مینامیم.
Spring Boot چیست؟
Spring Boot یک فریمورک opinionated است که به توسعهدهندگان کمک میکند اپلیکیشنهای مبتنی بر Spring را سریع و آسان بسازند.
هدف اصلی Spring Boot این است که بدون نیاز به نوشتن مکرر پیکربندی تکراری و boilerplate، اپلیکیشنهای مبتنی بر Spring را سریع ایجاد کند.
Spring Boot یک فریمورک بسیار محبوب برای توسعه وب سرویسهای REST و میکروسرویسها است.
در این دوره موضوعات زیر را یاد خواهید گرفت:
- یاد بگیرید چگونه با استفاده از Spring Boot و Spring Security و JWT و Spring Data JPA (Hibernate) و پایگاه داده MySQL و REST APIs قدرتمند برای اپلیکیشن تجارت الکترونیک بسازید.
- اصول REST API را یاد بگیرید - REST API، منابع، منابع فرعی، URI، متدهای HTTP، کدهای وضعیت HTTP
- مبانی REST API را یاد بگیرید - چگونه REST APIs را طراحی کنیم؟
- بهترین شیوههای REST API را یاد بگیرید.
- مبانی توسعه REST API در Spring Boot را همراه با حاشیهنویسیها یاد بگیرید.
- یاد بگیرید چگونه برای اپلیکیشن تجارت الکترونیک، REST APIهای CRUD بسازید.
- یاد بگیرید چگونه برای رابطههای ONE-TO-MANY در اپلیکیشن تجارت الکترونیک، REST API بسازید
- یاد بگیرید چگونه برای صفحهبندی و مرتبسازی در اپلیکیشن تجارت الکترونیک، REST API بسازید
- یاد بگیرید چگونه برای لاگین و ثبتنام و رجیستر و ورود به سیستم در اپلیکیشن تجارت الکترونیک، REST API بسازید.
- یاد بگیرید چگونه از Lombok استفاده کنید.
- یاد بگیرید چگونه از DTOs استفاده کنید.
- مدیریت استثنا در REST APIهای Spring Boot را یاد بگیرید.
- اعتبارسنجی REST API در Spring Boot را یاد بگیرید.
- یاد بگیرید چگونه از Spring Security در اپلیکیشن تجارت الکترونیک مبتنی بر Spring Boot استفاده کنید.
- احراز هویت و مجوزدهی In-memory و پایگاه داده در Spring Security را یاد بگیرید.
- یاد بگیرید چگونه REST APIs امن (امنیت مبتنی بر نقش) را در اپلیکیشن تجارت الکترونیک محافظت کنید.
- یاد بگیرید چگونه متدهای کوئری را با استفاده از Spring Data JPA بنویسید.
- نگاشت one-to-many و many-to-one و many-to-many در JPA را یاد بگیرید.
- یاد بگیرید چگونه REST APIs را با استفاده از Postman REST Client تست کنید.
- یاد بگیرید JWT چیست و چگونه کار میکند.
- یاد بگیرید چگونه JWT (JSON Web Token) را در Spring Security پیکربندی کنید.
- یاد بگیرید چگونه REST APIs امن را با استفاده از JWT محافظت کنید.
- یاد بگیرید چگونه از JWT همراه با API لاگین استفاده کنید.
- نسخهسازی REST APIs را یاد بگیرید.
- 4 استراتژی مهم نسخهسازی برای REST API را یاد بگیرید.
- مستندسازی REST API با Swagger UI را یاد بگیرید.
- REST APIهای Spring Boot را با JWT و استفاده از Swagger UI تست کنید.
- یاد بگیرید چگونه مستندات Swagger REST را با حاشیهنویسیها سفارشیسازی کنید.
- یاد بگیرید چگونه پروفایلها را به پروژه Spring Boot اضافه کنید (برای استقرار در محیطهای مختلف)
- یاد بگیرید چگونه اپلیکیشن تجارت الکترونیک مبتنی بر Spring Boot را روی AWS Cloud (تولید) مستقر کنید.
ابزارها و فناوریهای مورد استفاده در دوره:
فناوریها:
- Java 21
- Spring Boot 4
- Spring MVC
- Spring Data JPA (Hibernate)
- Spring Security 7
- JWT
- Tomcat
IDE:
STS IDE
پایگاه داده:
پایگاه داده MySQL
ابزارها:
- Swagger و Open-API - مستندسازی REST API
- Postman - تست REST API
- Maven - ابزار بیلد
استقرار در تولید:
AWS Cloud
چرا این دوره متفاوت است؟
- توضیحات گامبهگام
- یادگیری مبتنی بر پروژههای واقعی
- پوشش کامل توسعه بکاند از end-to-end
- کدنویسی تمیز و بهترین شیوهها
- مناسب برای مبتدیان و در عین حال آماده برای صنعت
- متمرکز بر مهارتهای بکاند مورد نیاز بازار کار
- مناسب برای یادگیرندگان در سطوح Beginner → Intermediate → Advanced
در پایان این دوره با ساخت REST APIs امن، مقیاسپذیر و آماده تولید با استفاده از Spring Boot و استقرار آنها روی AWS Cloud با اطمینان کامل کار خواهید کرد، دقیقاً همان چیزی که شرکتها از یک توسعهدهنده حرفهای بکاند انتظار دارند.
این دوره برای چه کسانی مناسب است؟
- این دوره برای مبتدیان Spring Boot و همچنین حرفهایهایی است که میخواهند یاد بگیرند چگونه REST APIs واقعی بسازند.
- توسعه REST API واقعی را با Spring Boot و با ساخت گامبهگام یک اپلیکیشن تجارت الکترونیک آماده تولید، به صورت حرفهای یاد بگیرید.
آموزش Spring Boot 4 - ساخت REST APIs امن با JWT و AWS
-
نقشه راه دوره: آنچه یاد میگیرید و میسازید 02:34
-
توضیح Spring در برابر Spring Boot 12:58
-
درک کانتینر IoC 01:06
-
تزریق وابستگی چیست؟ 01:27
-
ساخت اولین اپلیکیشن Spring Boot 08:08
-
حاشیهنویسی SpringBootApplication@ 01:44
-
توضیح جریان اجرای Spring Boot 07:03
-
توضیح Spring Boot Runners 08:05
-
نظارت و مدیریت اپلیکیشنهای Spring Boot با Actuator 05:52
-
ابزارهای توسعه Spring Boot 02:13
-
مروری بر حاشیهنویسیهای Stereotype در Spring 07:39
-
تزریق وابستگی با @Autowired 05:03
-
تزریق ویژگیها با @Value 04:18
-
انتخاب Bean مناسب با Qualifier@ و Primary@ 07:58
-
ایجاد Beans با Bean@ و Configuration@ 04:41
-
زمان آزمون None
-
Spring Data JPA چیست؟ 08:42
-
جریان اجرای داخلی Spring Data JPA 02:39
-
Hibernate در برابر Spring Data JPA 02:01
-
ایجاد و راهاندازی پروژه Spring Boot 01:47
-
اتصال اپلیکیشن Spring Boot به پایگاه داده MySQL 03:18
-
ایجاد Entity محصول 03:15
-
ایجاد مخزن محصول 03:56
-
()save - ذخیره یک Entity در جدول پایگاه داده 02:28
-
()save - بروزرسانی یک Entity در جدول پایگاه داده 02:58
-
()findById - دریافت یک Entity از پایگاه داده 01:15
-
()saveAll - ذخیره چندین Entity در جدول پایگاه داده 02:55
-
()findAll - دریافت همه Entitys از جدول پایگاه داده 01:33
-
()deleteById - حذف یک Entity از پایگاه داده 01:27
-
()delete - حذف یک Entity از جدول پایگاه داده 01:38
-
ایجاد کوئری در JPQL با استفاده از پارامترهای مبتنی بر ایندکس 04:20
-
اتصال پارامتر مبتنی بر نام در JPQL 02:52
-
اجرای کوئریهای نیتیو SQL در Spring Data JPA 03:54
-
پیادهسازی صفحهبندی و مرتبسازی در Spring Data JPA 10:08
-
زمان آزمون None
-
REST API چیست؟ 00:56
-
محدودیتها و اصول معماری REST 02:26
-
منابع، منابع فرعی و URI 01:48
-
متدهای HTTP 01:45
-
کدهای وضعیت HTTP 02:43
-
زمان آزمون None
-
ایجاد REST API در Spring Boot - بررسی RequestMapping@ و ResponseBody@ 05:36
-
REST API در Spring Boot - بررسی RestController@ 03:17
-
ایجاد REST API در Spring Boot - بررسی GetMapping@ 05:50
-
REST API در Spring Boot - بررسی RequestParam@ 03:36
-
REST API در Spring Boot - بررسی PathVariable@ 03:13
-
ایجاد REST API در Spring Boot - بررسی PostMapping@ و RequestBody@ 04:13
-
REST API در Spring Boot - بررسی PutMapping@ 03:50
-
REST API در Spring Boot - بررسی DeleteMapping@ 02:48
-
زمان آزمون None
-
راهنمای نصب Project Lombok 06:47
-
زمان آزمون None
-
ModelMapper چیست؟ 01:47
-
زمان آزمون None
-
اپلیکیشن تجارت الکترونیک - الزامات سطح بالا 02:20
-
انتخاب پشته فناوری برای اپلیکیشن تجارت الکترونیک 02:12
-
شناسایی منابع برای اپلیکیشن تجارت الکترونیک 01:12
-
معماری اپلیکیشن Spring Boot 02:22
-
طراحی REST API برای منابع مشتری، سفارش، ثبتنام و ورود 02:11
-
ایجاد یک پروژه Spring Boot از ابتدا 04:02
-
ایجاد ساختار پکیج و لایهای در Spring Boot 03:39
-
پیکربندی MySQL با Spring Boot 05:04
-
ایجاد Entity مشتری در JPA 04:31
-
ایجاد مخزن در JPA برای CustomerRepository 02:26
-
ایجاد کلاس DTO - بررسی CustomerDto 02:06
-
ساخت و تست REST API ایجاد مشتری 11:28
-
ساخت و تست REST API دریافت همه مشتریان 04:37
-
ساخت و تست REST API دریافت مشتری بر اساس شناسه 06:39
-
ساخت و تست REST API بروزرسانی مشتری 07:13
-
ساخت و تست REST API حذف مشتری 04:48
-
مروری بر صفحهبندی و مرتبسازی 01:24
-
پشتیبانی از صفحهبندی برای REST API دریافت همه مشتریان 08:13
-
سفارشیسازی منبع API برای صفحهبندی 06:15
-
پشتیبانی از مرتبسازی برای REST API دریافت همه مشتریان 08:13
-
سفارشیسازی منبع API برای صفحهبندی 06:15
-
پشتیبانی از مرتبسازی برای REST API دریافت همه مشتریان 03:29
-
ترتیب در API مرتبسازی - ASC و DESC 04:22
-
بازآرایی مقادیر Hardcoded برای صفحهبندی و مرتبسازی 02:50
-
ایجاد Entity در JPA - سفارش 08:34
-
ایجاد مخزن در JPA - OrderRepository 02:26
-
ایجاد کلاس DTO - بررسی OrderDto 01:58
-
ساخت و تست REST API ایجاد سفارش 13:38
-
ساخت و تست REST API دریافت همه سفارشها 07:02
-
ساخت و تست REST API دریافت سفارش بر اساس شناسه 09:07
-
ساخت و تست REST API بروزرسانی سفارش 09:04
-
ساخت و تست REST API حذف سفارش 07:02
-
ریفکتور کردن REST APIهای GetCustomerById و GetAllCustomers 03:51
-
مروری بر مدیریت خطا در Spring Boot REST API 03:38
-
Spring Boot REST API برای مدیریت استثناهای خاص یا سفارشی 08:32
-
مدیریت استثنای گلوبال در Spring Boot REST API 02:52
-
زمان آزمون None
-
اعتبارسنجی با Spring Boot - بررسی 02:41
-
اعتبارسنجی و سفارشیسازی پاسخ اعتبارسنجی - ایجاد مشتری و بروزرسانی مشتری 15:32
-
اعتبارسنجی درخواست REST API برای ایجاد سفارش و بروزرسانی سفارش 05:00
-
زمان آزمون None
-
افزودن امنیت به Spring Boot و بررسی پیکربندی خودکار امنیت 07:17
-
پیادهسازی احراز هویت اولیه با استفاده از Spring Security 06:00
-
احراز هویت اولیه HTTP چگونه کار میکند؟ 01:30
-
امنسازی REST APIs با احراز هویت In-Memory 14:23
-
ایجاد JPA Entities - کاربر و نقش [نگاشت MANY-TO-MANY] 08:09
-
ایجاد مخازن Spring Data JPA - بررسی UserRepository و RoleRepository 04:30
-
پیادهسازی رابط UserDetailsService - بررسی CustomUserDetailsService 05:11
-
احراز هویت پایگاه داده در Spring Security چگونه کار میکند؟ 02:28
-
امنسازی REST APIs با احراز هویت مبتنی بر پایگاه داده 09:01
-
طراحی و ساخت REST API لاگین 10:33
-
ساخت REST API امن برای رجیستریشن 13:02
-
احراز هویت JWT چگونه کار میکند؟ 03:38
-
افزودن JWT به اپلیکیشن Spring Boot 07:35
-
ایجاد کلاس کمکی JwtTokenProvider 11:06
-
ایجاد JwtAuthenticationFilter 09:39
-
پیکربندی JWT در پیکربندی Spring Security 04:23
-
تغییر API لاگین برای بازگردانی توکن JWT و تست همه یوزکیسها 06:03
-
مقدمهای بر Swagger 04:12
-
افزودن SpringDoc OpenAPI به پروژه Spring Boot 04:44
-
تعریف اطلاعات API با استفاده از حاشیهنویسیها 04:25
-
افزودن Auth Header به Swagger UI و تست pring Boot REST APIs با استفاده از JWT 09:39
-
سفارشیسازی مستندات API در Swagger با حاشیهنویسیها 06:27
-
سفارشیسازی مستندات مدلهای Swagger با حاشیهنویسیها 03:29
-
مقدمهای بر نسخهسازی در REST APIs 02:19
-
نسخهسازی از طریق مسیر URI 08:47
-
نسخهسازی از طریق پارامترهای کوئری 03:21
-
نسخهسازی از طریق هدرهای سفارشی 03:00
-
نسخهسازی از طریق مذاکره محتوا و MediaType 03:48
-
نسخهسازی برای REST APIs اپلیکیشن تجارت الکترونیک 02:41
-
زمان آزمون None
-
مروری بر Spring Boot و AWS Cloud 06:38
-
استفاده از پروفایلها در اپلیکیشن تجارت الکترونیک مبتنی بر Spring Boot 06:09
-
نوشتن کد برای درج متادیتا در جداول 07:15
-
چگونه به حساب AWS وارد شوید و ثبتنام کنید؟ 04:13
-
راهاندازی پایگاه داده MySQL در AWS Cloud با استفاده از سرویس RDS 03:34
-
اتصال به پایگاه داده MySQL در AWS از طریق MySQL Workbench 03:56
-
بستهبندی اپلیکیشن تجارت الکترونیک مبتنی بر Spring Boot به صورت فایل JAR 03:46
-
استقرار یک فایل JAR آماده تولید از Spring Boot روی AWS Cloud 06:32
-
زمان آزمون None
مشخصات آموزش
آموزش Spring Boot 4 - ساخت REST APIs امن با JWT و AWS
- تاریخ به روز رسانی: 1405/04/12
- سطح دوره:متوسط
- تعداد درس:134
- مدت زمان :10:25:35
- حجم :7.29GB
- زبان:دوبله زبان فارسی
- دوره آموزشی:AI Academy