This course was created with the
course builder. Create your online course today.
Start now
Create your course
with
Autoplay
Autocomplete
Previous Lesson
Complete and continue
Building Real-Time REST APIs with Spring Boot - Blog App (AWS Deployment)
Introduction
Course Overview and What you'll Learn (5:17)
Download Source Code and PDF Files (Class Notes)
Learn REST Basics ( For Beginners)
1. REST Introduction and REST Architecture (9:57)
2. REST Key Concepts - Resource, URI and Sub-resource (7:16)
3. REST Key Concepts - Http Methods (5:49)
4. REST Key Concepts - HTTP Status Codes (10:40)
5. REST API Design Best Practices (Important) (10:10)
Class Notes - REST Basics and Key Concepts
Setting Up Your Development Environment
Guide to Setup Development Environment
Install Java JDK 18 on Windows 10 (5:56)
Install and Setup Intellij IDEA in Windows 10 (9:19)
Install and Setup Spring Tool Suite (STS) IDE for Windows 10 (9:23)
Install and Setup Lombok in STS (10:54)
Install MySQL 8 Server and MySQL Workbench Latest Version on Windows 10 (13:04)
REST API's Design for Blog Application
1. Blog Application - High Level Requirements (2:32)
2. Selecting The Technology Stack for Blog App (3:57)
3. Indentify Resources for Blog Application (1:19)
4. REST API's Design for Post Resource (3:55)
5. REST APIs Design for Comment Resource (4:58)
6. REST API's Design for Signup and Signin (1:30)
7. Spring Boot Application Architecture (1:42)
Building CRUD REST API's for Post Resource
1. Create and Set up Spring Boot Project (8:51)
2. Create Spring Boot Project Structure (4:26)
3. Configure MySQL Database (10:41)
4. Creating JPA Entity - Post Entity (9:35)
5. Creating JPA Repository -PostRepository (6:25)
6. Creating Custom Exception - ResourceNotFoundException (5:36)
7. Creating DTO Class - PostDto (6:00)
8. Create Post REST API - /api/posts - Overview (3:17)
9. Create Post REST API - /api/posts - Coding (12:09)
10. TEST Create Post REST API using Postman client (5:15)
11. Get All Posts API - /api/posts - Overview (2:30)
12. Get All Posts REST API - /api/posts - Coding (10:25)
13. Get Post By Id REST API - /api/posts/{postId} - Overview (2:40)
14. Get Post By Id REST API - /api/posts/{postId} - Coding (6:50)
15. Update Post REST API - /api/posts/{postId} - Overview (3:26)
16. Update Post REST API - /api/posts/{postId} - Coding (8:52)
17. Delete Post REST API - /api/posts/{postId} - Overview (1:47)
18. Delete Post REST API - /api/posts/{postId} - Coding (6:44)
19. Important - Using @Transactional Annotation in Service (3:50)
Download Source Code
Pagination and Sorting
1. Pagination and Sorting Overview (4:53)
2. Pagination Support for Get All Posts REST API (11:28)
3. Customizing Pagination API Response (8:43)
4. Sorting Support for Get All Posts REST API (7:10)
5. Ordering in Sorting API - ASC and DESC (6:37)
6. Refactoring Hardcoded Values for Paging and Sorting (4:57)
Download Source Code
Building CRUD REST API' for Comment Resource (One to Many Mapping with Post Resource)
1. Creating JPA Entity - Comment (10:44)
2. Creating JPA Repository - CommentRepository (3:53)
3. Creating DTO Class - CommentDto (2:55)
4. Create Comment REST API - /api/posts/{postId}/comments (14:19)
5. Test Create Comment REST API using Postman Client (4:25)
6. Get All Comments By Post Id REST API - /api/posts/{postId}/comments (8:30)
7. Get Comment By Id REST API - /api/posts/{postId}/comments/{id} (10:43)
8. Update Comment By Id REST API - /api/posts/{postId}/comments/{id} (12:24)
9. Delete Comment REST API - /api/posts/{postId}/comments/{id} (7:39)
Download Source Code
Mapping Entity to DTO and DTO to Entity using ModelMapper Library
1. Map Post Entity to Post DTO using ModelMapper (8:47)
2. Map Comment Entity to Comment DTO using ModelMapper (3:16)
3. Refactoring GetPostById and GetAllPosts REST API (4:21)
Download Source Code
REST API Exception Handling in Spring Boot
1. Spring Boot REST API Error Handling Overview (5:11)
2. Spring Boot REST API Specific or Custom Exception Handling (10:10)
3. Spring Boot REST API Global Exception Handling (4:39)
Download Source Code
Class Notes - Spring Boot Exception Handling
REST API Request Validation in Spring Boot
1. Validation with Spring Boot - Overview (4:36)
2. Validate Create Post and Update Post REST API Request (12:18)
3. Customizing Validation Response (10:52)
4. Validate Create Comment and Update Comment REST API Request (8:52)
Download Source Code
Class Notes - Validation in Spring Boot with Hibernate Validator
Securing REST APIs with Database Authentication (Role-Based Security)
Note on WebSecurityConfigurerAdapter Deprecated in Latest Version
1. Adding Security to Spring Boot and Exploring Security Auto Configuration (7:16)
2. Implementing Basic Authentication using Spring Security (9:51)
3. Securing REST API's with In-memory Authentication (13:28)
4. Create JPA Entities - User and Role ( Many to Many Mapping) (13:38)
5. Creating JPA Repositories - UserRepository and RoleRepository (6:45)
6. UserDetailsService Interface Implementation (9:13)
7. Securing REST API's with Database Authentication (12:37)
Download Source Code
Building Signin (Login) and Signup REST APIs
Signin REST API (10:33)
Signup REST API (12:17)
Download Source Code
JWT (JSON Web Token) - Securing REST API's with Spring Security and JWT
1. JWT Introduction (9:06)
2. Spring Security JWT Overview (3:11)
3. Adding JWT to Spring Boot App (6:15)
4. Creating JwtTokenProvider (11:16)
5. Creating JwtAuthenticationFilter (12:20)
6. Configuring JWT in Spring Security Configuration (6:02)
7. Change Signin or Login API to Return JWT (9:04)
Download Source Code
Class Notes - JWT + Spring Security Overview
Upgraded - Spring Security without the WebSecurityConfigurerAdapter
Versioning REST APIs
1. Versioning REST APIs Overview (5:33)
2. Versioning through URI Path (12:40)
3. Versioning through query parameters (4:44)
4. Versioning through custom headers (5:14)
5. Versioning through content negotiation (6:34)
6. Versioning Blog App REST APIs (4:09)
Download Source Code
Class Notes - Versioning REST APIs
Spring Boot REST APIs Documentation with Swagger
1. What is Swagger and Why REST API Documentation is Important (4:57)
2. Integrating Swagger 3 in Spring Boot App (7:33)
3. REST APIs Documentation with Swagger UI (5:27)
4. Swagger Docket Configuration in Spring Boot (12:06)
5. Configure Swagger UI to include a JWT (10:01)
6. Test Spring Boot REST APIs with JWT using Swagger UI (9:11)
7. Customizing Swagger REST Documentation with Annotations (11:13)
8. Customizing Swagger Models Documentation with Annotations (5:36)
Download Source Code
Deploy Spring Boot Blog App on AWS Cloud
1. Spring Boot AWS Deploymennt Overview (2:48)
2. Important AWS Services that Java Developers Should Know (7:43)
3. Using Profiles in Spring Boot Blog App (7:40)
4. Write a Code to Insert Metadata in Tables (7:41)
5. How to Signup and Signin to AWS Account (4:18)
6. Set up MySQL Database in AWS cloud using RDS Service (6:07)
7. Connect to AWS MySQL Database from MySQL Workbench (4:28)
8. Package Spring Boot Blog App as JAR File (3:48)
9. Deploy Spring Boot JAR file on AWS Cloud using Elastic Beanstalk Service (4:49)
10. Test REST APIs using Swagger UI (3:53)
Download Source Code
Build Search REST API Step by Step (Added New Section)
1. Create Spring Boot Project (6:11)
2. Configure MySQL Database (5:20)
3. Create Product JPA Entity (4:44)
4. Create ProductRepository Interface (2:30)
5. Create JPQL and Native SQL queries for Search REST API (5:24)
6. Create Service Layer (3:01)
7. Build Search REST API and Test using Postman (10:09)
Download Source Code
Transaction Management with Spring Boot and Spring Data JPA (Added New Section)
0. Module Intro - What you will learn in this section? (1:13)
1. Transaction Management with Spring Data JPA (7:00)
2. Use Case - Placing Order on eCommerce Shopping Website (3:17)
3. Create and Setup Spring Boot Project in Intellij (6:43)
4. Configure MySQL Database (5:19)
5. Create Order and Payment JPA Entities (8:10)
6. Create OrderRepository and Payment Repository Interfaces (2:27)
7. Create OrderRequest and OrderResponse DTO Classes (2:27)
8. Create Service Layer (9:34)
9. Create Place Order REST API and Test using Postman (6:36)
10. Handle Transaction using Spring @Transactional Annotation (6:32)
Download Source Code
Bonus Content ( Spring Boot for Beginners - Fundamentals)
1. What is Spring Boot ? (5:56)
2. Spring Boot Key Features (12:06)
3. Different Ways to Create Spring Boot Application (4:28)
4. Creating Spring Boot App using Spring Initializr (10:22)
5. Spring Boot Auto-Configuration - Theory (7:56)
6. Spring Boot Auto-configuration - Practical (13:52)
7. Spring Boot App Execution Process - theory (6:55)
8. Spring Boot App Execution Process - practical (7:38)
9. @SpringBootApplication Annotation (13:26)
10. Spring Boot Starters - Very Important Feature (10:44)
11. Spring Boot Starter Parent (5:43)
12. Embedded Servers - Tomcat, Jetty and Undertow (13:01)
13. Running Spring Boot Application from the Command Line (8:25)
14. Spring Boot Dev Tools (8:06)
Bonus Content ( Spring Boot for Beginners - REST Basics)
1. Creating Spring Boot Application in STS (15:08)
2. Create Simple REST API - Hello World API (8:30)
3. Spring Boot REST API returns Java Bean (9:07)
4. Create Spring Boot REST API Returns List (4:55)
5. Spring Boot REST API with Path Variable (10:49)
6. Spring Boot REST API with Request Param (9:53)
Bonus Content - Important Spring Boot Concepts for Interviews ( Q&A)
Q1. What is Spring boot and What problem Spring Boot Solves (5:42)
Q2. Explain few important Spring Boot Key features (11:34)
Q3. What is Spring Boot Auto configuration (6:41)
Q4. How Spring boot internally works or Explain run() method in Spring boot (10:43)
Q5. What are different ways to create a Spring boot application (3:55)
Q6. Explain @SpringBootApplication,@Configuration and @ComponentScan annotations (13:19)
Q7. What is Spring boot starters and name few important Spring boot starter dependencies (10:21)
Q8. What is Spring Boot Starter Parent (5:11)
Q9. How many types of projects we can create using Spring boot (1:16)
Q10. Explain types of Embedded Servers in Spring boot How to change default server port (12:36)
Q11. How to run Spring boot application from command line (6:29)
Q12. Describe the flow of REST API HTTP requests through the Spring Boot application (3:16)
Q13. How to create and deploy Spring boot WAR to External Tomcat Server (11:42)
Q14. What Is Spring Boot DevTools Used For (7:56)
Q15. How to Add Security to Spring Boot and Explain Security Auto Configuration (6:54)
Q16. Have you used profiles in your Spring Boot project If yes, Explain briefly (4:45)
2. Configure MySQL Database
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock